Description
修改题目125(学生类-本科生类-研究生类) 为学生类添加属性成绩,添加相应的get和set函数,添加函数getGrade()表示获得等级,该函数应当为抽象函数。 本科生和研究生的等级计算方式不同,如下所示 本科生标准 研究生标准 [80--100) A [90--100) A [70--80) B [80--90) B [60--70) C [70--80) C [50--60) D [60--70) D 50 以下 E 60 以下 E main函数中构造两个学生Student变量,分别指向本科生和研究生对象,调用getGrade()方法输出等级
Input
本科生类信息,学号、姓名、性别、专业、成绩 研究生类信息,学号、姓名、性别、专业、导师、成绩
Output
本科生等级 研究生等级
Sample Input
2 chen female cs 90 3 li male sc wang 80
Sample Output
A B
import java.util.Scanner;
public class Main{
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int n1 = scan.nextInt();
String na1 = scan.next();
String s1 = scan.next();
String m1 = scan.next();
int g1 = scan.nextInt();
Student student1 = new CollegeStudent(n1,na1,s1,g1,m1);
System.out.println(student1.getGrade(g1));
int n2 = scan.nextInt();
String na2 = scan.next();
String s2 = scan.next();
String m2 = scan.next();
String su1 = scan.next();
int g2 = scan.nextInt();
Student student2 = new GraduateStudent(n2,na2,s2,g2,m2,su1);
System.out.println(student2.getGrade(g2));
}
}
abstract class Student{
private int no;
private String name;
private String sex;
private int grade;
public Student(int no, String name, String sex, int grade )
{
this.no = no;
this.name = name;
this.sex = sex;
this.grade = grade;
}
public void setNo(int n)
{
no = n;
}
public void setName(String na)
{
name = na;
}
public void setSex(String s)
{
sex = s;
}
public void setGrade(int g)
{
grade = g;
}
public int getNo()
{
return no;
}
public String getName()
{
return name;
}
public String getSex()
{
return sex;
}
public int getGrades()
{
return grade;
}
abstract public String getGrade(int grade);
}
class CollegeStudent extends Student{
private String major;
public CollegeStudent(int no, String name,String sex,int grade,String major)
{
super(no,name,sex,grade);
this.major = major;
}
public void setMajor(String m)
{
major = m;
}
public String getMajor()
{
return major;
}
public String getGrade(int grade)
{
int g = this.getGrades();
if(g >=80 && g < 100)
{
return "A";
}
if(g >= 70 && g < 80)
{
return "B";
}
if(g >= 60 && g < 70)
{
return "C";
}
if(g >= 50 && g < 60)
{
return "D";
}
else
return "E";
}
}
class GraduateStudent extends CollegeStudent{
private String supervisor;
public GraduateStudent(int no,String name,String sex,int grade,String major, String supervisor)
{
super(no,name,sex,grade,major);
this.supervisor = supervisor;
}
public void setSupervisor(String s)
{
supervisor = s;
}
public String getSuprtvisor()
{
return supervisor;
}
public String getGrade(int grade)
{
int g = this.getGrades();
if(g >=90 && g < 100)
{
return "A";
}
if(g >= 80 && g < 90)
{
return "B";
}
if(g >= 70 && g < 80)
{
return "C";
}
if(g >= 60 && g < 70)
{
return "D";
}
else
return "E";
}
}