实现专业类Major,要求数据成员至少包括专业名称string MajorName、专业代码string MajorNo;成员函数至少包括ShowMajorName()、ShowMajorNo()、构造函数、复制构造函数、析构函数。基于Major类,实现组合类Student,要求私有数据成员至少包括:姓名string name、 学号string no、年龄int age、专业Major major;成员函数至少包括SetStudent()、ShowStudent()、构造函数、复制构造函数、析构函数。运行出结果并分析构造函数与复制构造函数的调用情况。
package test;
class Major{
private String majorName;
private String majorNo;
public String getMajorName() {
return majorName;
}
public void setMajorName(String majorName) {
this.majorName = majorName;
}
public String getMajorNo() {
return majorNo;
}
public void setMajorNo(String majorNo) {
this.majorNo = majorNo;
}
public Major() {}
public Major(String majorName, String majorNo) {
super();
this.majorName = majorName;
this.majorNo = majorNo;
}
}
class Student extends Major{
private String name;
private String no;
private int age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getNo() {
return no;
}
public void setNo(String no) {
this.no = no;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public Student() {
super();
// TODO Auto-generated constructor stub
}
public Student(String majorName, String majorNo,String name,String no,int age) {
super(majorName, majorNo);
// TODO Auto-generated constructor stub
this.name = name;
this.no = no;
this.age = age;
}
}
public class TestDemo {
public static void main(String[] args) {
Student stu = new Student("java","123","张三","123456",18);
System.out.println("姓名:"+stu.getName()+",学号:"+stu.getNo()+",年龄:"+stu.getAge()+",专业名称:"+stu.getMajorName()+",专业代码:"+stu.getMajorNo());
}
}