You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
131 lines
2.9 KiB
131 lines
2.9 KiB
import java.util.ArrayList;
|
|
import java.util.List;
|
|
|
|
// 父类 Person
|
|
class Person {
|
|
private String name;
|
|
private int age;
|
|
|
|
public Person() {}
|
|
public Person(String name, int age) {
|
|
this.name = name;
|
|
this.age = age;
|
|
}
|
|
|
|
public void showInfo() {
|
|
System.out.println("姓名:" + name + ",年龄:" + age);
|
|
}
|
|
|
|
public String getName() {
|
|
return name;
|
|
}
|
|
public void setName(String name) {
|
|
this.name = name;
|
|
}
|
|
public int getAge() {
|
|
return age;
|
|
}
|
|
public void setAge(int age) {
|
|
this.age = age;
|
|
}
|
|
}
|
|
|
|
// 学生子类
|
|
class Student extends Person {
|
|
private String stuId;
|
|
private String major;
|
|
|
|
public Student() {}
|
|
public Student(String name, int age, String stuId, String major) {
|
|
super(name, age);
|
|
this.stuId = stuId;
|
|
this.major = major;
|
|
}
|
|
|
|
@Override
|
|
public void showInfo() {
|
|
super.showInfo();
|
|
System.out.println("身份:学生,学号:" + stuId + ",专业:" + major);
|
|
}
|
|
|
|
public String getStuId() {
|
|
return stuId;
|
|
}
|
|
public void setStuId(String stuId) {
|
|
this.stuId = stuId;
|
|
}
|
|
public String getMajor() {
|
|
return major;
|
|
}
|
|
public void setMajor(String major) {
|
|
this.major = major;
|
|
}
|
|
}
|
|
|
|
// 教师子类
|
|
class Teacher extends Person {
|
|
private String teaId;
|
|
private String dept;
|
|
|
|
public Teacher() {}
|
|
public Teacher(String name, int age, String teaId, String dept) {
|
|
super(name, age);
|
|
this.teaId = teaId;
|
|
this.dept = dept;
|
|
}
|
|
|
|
@Override
|
|
public void showInfo() {
|
|
super.showInfo();
|
|
System.out.println("身份:教师,工号:" + teaId + ",院系:" + dept);
|
|
}
|
|
|
|
public String getTeaId() {
|
|
return teaId;
|
|
}
|
|
public void setTeaId(String teaId) {
|
|
this.teaId = teaId;
|
|
}
|
|
public String getDept() {
|
|
return dept;
|
|
}
|
|
public void setDept(String dept) {
|
|
this.dept = dept;
|
|
}
|
|
}
|
|
|
|
// 管理类
|
|
class PersonManager {
|
|
private List<Person> list = new ArrayList<>();
|
|
|
|
// 统一添加方法,合并addStudent、addTeacher
|
|
public void addPerson(Person p) {
|
|
list.add(p);
|
|
}
|
|
|
|
// 遍历展示所有人信息
|
|
public void showAll() {
|
|
for(Person p : list){
|
|
p.showInfo();
|
|
System.out.println("--------------------");
|
|
}
|
|
}
|
|
}
|
|
|
|
// 主测试类
|
|
public class PersonTest {
|
|
public static void main(String[] args) {
|
|
PersonManager manager = new PersonManager();
|
|
|
|
// 创建学生、教师对象
|
|
Student s1 = new Student("张三", 19, "2025001", "大数据管理");
|
|
Teacher t1 = new Teacher("王老师", 38, "T10086", "计算机学院");
|
|
|
|
// 统一添加
|
|
manager.addPerson(s1);
|
|
manager.addPerson(t1);
|
|
|
|
// 展示所有信息
|
|
manager.showAll();
|
|
}
|
|
}
|