假定根据学生的3门学位课程的分数决定其是否可以拿到学位,对于本科生,如果三门课程的平均分数超过60分即表示通过;而对于研究生
则需要三门课程平均分数超过80分才能通过。根据上述要求,使用类的继承及相关机制完成以下设计
1.设计一个基类Student描述学生的共同特征
2.设计一个描述本科生的类Undergraduate,该类继承并扩展Student类
3.设计一个描述研究生的类Graduate,该类继承并扩展Student类
4.设计一个测试类StudentDemo,分别创建本科生和研究生的类的对象,并输出相关学位信息
class Student {
private String name;
private int class1,class2,class3;
public Student(String name,int class1,int class2,int class3) {
this.name=name;
this.class1=class1;
this.class2=class2;
this.class3=class3;
}
public String getName() {
return name;
}
public int getAverage() {
return (class1+class2+class3)/3;
}
}
//本科生类
class Undergraduate extends Student{
public Undergraduate(String name,int class1,int class2,int class3) {
super(name,class1,class2,class3);
}
public void dispass() {
if(getAverage()>=60)
System.out.println("本科生"+getName()+"三科平均分:"+getAverage()+",可以拿到学士学位");
else
System.out.println("本科生"+getName()+"三科平均分:"+getAverage()+",不能拿到学士学位");
}
}
//研究生
class Graduate extends Student{
public Graduate(String name,int class1,int class2,int class3) {
super(name,class1,class2,class3);
}
public void dispass() {
if(getAverage()>=80)
System.out.println("研究生"+getName()+"三科平均分:"+getAverage()+",可以拿到硕士学位");
else
System.out.println("研究生"+getName()+"三科平均分:"+getAverage()+",不能拿到硕士学位");
}
}
//测试类
public class StudentDemo{
public static void main(String args[]) {
Undergraduate U=new Undergraduate("Lina",85,90,70);
U.dispass();
Graduate P=new Graduate("Marry",70,75,83);
P.dispass();
}
}

本文介绍了一个基于学生平均分数评定学位资格的系统设计。系统包括一个基类Student,以及两个子类Undergraduate和Graduate,分别用于本科生和研究生的学位评定。通过继承机制,实现了不同学位等级的评分标准。
346





