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

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();
}
}