编写一个学生和教师数据输入和显示程序,学生数据有编号、姓名、班号和成绩,教师数据有编号、姓名、职称和部门。要求将编号、姓名输入和显示设计成一个类Person,并作为学生数据操作类Student和教师数据操作类Teacher的基类Java
时间: 2023-06-19 22:09:25 浏览: 212
以下是一个可能的实现:
```
// 定义 Person 类作为基类
public class Person {
private int id;
private String name;
public Person(int id, String name) {
this.id = id;
this.name = name;
}
public int getId() {
return id;
}
public String getName() {
return name;
}
}
// 定义 Student 类作为学生数据操作类
public class Student extends Person {
private int classNumber;
private int score;
public Student(int id, String name, int classNumber, int score) {
super(id, name);
this.classNumber = classNumber;
this.score = score;
}
public int getClassNumber() {
return classNumber;
}
public int getScore() {
return score;
}
public void display() {
System.out.println("学生编号:" + getId());
System.out.println("学生姓名:" + getName());
System.out.println("班级编号:" + getClassNumber());
System.out.println("学生成绩:" + getScore());
}
}
// 定义 Teacher 类作为教师数据操作类
public class Teacher extends Person {
private String title;
private String department;
public Teacher(int id, String name, String title, String department) {
super(id, name);
this.title = title;
this.department = department;
}
public String getTitle() {
return title;
}
public String getDepartment() {
return department;
}
public void display() {
System.out.println("教师编号:" + getId());
System.out.println("教师姓名:" + getName());
System.out.println("教师职称:" + getTitle());
System.out.println("教师部门:" + getDepartment());
}
}
// 测试程序
public class Test {
public static void main(String[] args) {
Student s = new Student(1, "张三", 1, 90);
s.display();
Teacher t = new Teacher(1, "李四", "教授", "计算机科学与技术");
t.display();
}
}
```
在这个实现中,`Person` 类作为基类,包含了编号和姓名两个通用的属性。`Student` 类继承自 `Person` 类,并添加了班级编号和成绩两个特有的属性,还包含了 `display()` 方法用于输出学生信息。`Teacher` 类同样继承自 `Person` 类,添加了职称和部门两个特有的属性,也包含了 `display()` 方法用于输出教师信息。
在测试程序中,我们分别创建了一个学生对象和一个教师对象,并调用它们的 `display()` 方法输出信息。
阅读全文