假设已有Student类,学生类中描述所有学生对象所具有的学号(number)、姓名(name)、性别(sex)属性,和初始化学生对象这三个属性的对应的构造方法,以及输出学生对象各属性值的方法。 请以Student类为父类建立子类Graduate。为Graduate类增加数据类型为 String的成员变量adviser,int型的成员变量salary,分别用于存储导师信息和工资信息。为Graduate类编写构造方法Graduate(String xh,String xm,String xb,String ds,String gz),在该构造方法中首先调用Student类的构造方法,以便将前三个参数分别赋予成员变量number,name和sex,然后利用赋值语句分别给adviser,salary赋值。在Graduate类中重写Student类的output( )方法,使它能够通过调用父类中的output( )方法输出Graduate类对象的数据。对象的所有信息。 创建一个Graduate对象,该对象调用output方法后,输出结果如下图:
时间: 2024-02-12 21:08:49 浏览: 111
C++学生成绩管理系统
5星 · 资源好评率100%
```java
public class Student {
private String number;
private String name;
private String sex;
public Student(String number, String name, String sex) {
this.number = number;
this.name = name;
this.sex = sex;
}
public void output() {
System.out.println("学号:" + number);
System.out.println("姓名:" + name);
System.out.println("性别:" + sex);
}
}
public class Graduate extends Student {
private String adviser;
private int salary;
public Graduate(String number, String name, String sex, String adviser, int salary) {
super(number, name, sex);
this.adviser = adviser;
this.salary = salary;
}
@Override
public void output() {
super.output();
System.out.println("导师:" + adviser);
System.out.println("工资:" + salary);
}
}
public class Main {
public static void main(String[] args) {
Graduate graduate = new Graduate("1001", "张三", "男", "李四", 5000);
graduate.output();
}
}
```
输出结果:
```
学号:1001
姓名:张三
性别:男
导师:李四
工资:5000
```
在上述代码中,Graduate 类继承了 Student 类,并添加了 adviser 和 salary 两个成员变量。在 Graduate 类的构造方法中,首先调用父类的构造方法,将前三个参数分别赋值给 number、name 和 sex 成员变量,然后再分别给 adviser 和 salary 赋值。在 Graduate 类中重写了父类的 output 方法,先调用父类的 output 方法输出学号、姓名和性别,然后再输出导师和工资信息。最后在 Main 类中创建一个 Graduate 对象,并调用其 output 方法输出结果。
阅读全文