8.20 学生类继承实例

发布时间 2023-06-08 18:31:04作者: 盘思动

demo1。建立一个人类(Person)和学生类(Student),功能要求如下:

(1)Person中包含4个私有型的数据成员name、addr、sex、age,分别为字符串型、字符串型、字符型及整型,表示姓名、地址、性别和年龄。
    一个4参构造方法、一个2参构造方法、一个无参构造方法、一个输出方法显示4种属性。 
(2)Student类继承Person类,并增加成员math、english存放数学和英语成绩。一个6参构造方法、一个2参构造方法、一个无参构造方法和输出方法用于显示6种属性。
class Person {
	private String name ;
	private String addr ;
	private char sex ; 
	private int age ;
	public Person() {}
	public Person(String name,String addr) {
		this(name,addr,'男',0) ; 
	}
	public Person(String name,String addr,char sex,int age) {
		this.name = name ;
		this.addr = addr ;
		this.sex = sex ;
		this.age = age ;
	}
	public String getInfo() {
		return "姓名:" + this.name + "、地址:" + this.addr + "、性别:" + this.sex + "、年龄:" + this.age ;
	}
}

class Student extends Person {
	private double math ;
	private double english ;
	public Student() {}
	public Student(String name,String addr) {
		super(name,addr) ;
	}

	public Student(String name,String addr,char sex,int age,double math,double english) {
		super(name,addr,sex,age) ;// 调用父类的构造方法
		this.math = math ;
		this.english = english ;
	}

	public String getInfo() {
		return super.getInfo() + "、数学成绩:" + this.math + "、英语成绩:" + this.english ;
	}
}

public class HelloWorld {
	public static void main(String args[]) {
		Student stu = new Student("张三","天安门",'男',12,78.99,89.98) ;
		System.out.println(stu.getInfo()) ;
	}
}