-->
当前位置:首页 > 题库 > 正文内容

编程题: jmu-java-m04-Abstract、Person、Student、Teacher

Luz3年前 (2022-04-28)题库1099
该程序包含

**Person类(抽象类):**
**属性:**int id, String name, LocalDate birthDate。注意:定义时需按照顺序从上到下定义。
**方法:**构造方法(id, name, year, month, dayOfMonth); id与birthDate的getter方法; name的getter/setter方法;Eclipse自动生成的tostring;抽象方法String getPersonNumber(),该方法之所以声明为抽象是因为其在子类返回的信息与子类特有属性相关。

**Student类继承自Person类:**
**属性:**int enrollmentYear, String clazzName。
**方法:**构造方法(id, name, year, month, dayOfMonth, enrollmentYear, clazzName),建议使用super复用Person的构造方法;
覆盖父类的 getPersonNumber()方法,返回"Student-enrollmentYear-name"

**Teacher类继承自Person:**
**属性:**String department, double salary。
**方法:**构造方法(id, name, year, month, dayOfMonth, department, salary),建议使用super复用Person的构造方法;
覆盖父类的 getPersonNumber()方法,返回"Teacher-department-name"



**main方法包含:**
java
public static void main(String[] args) {
String[] types = {"Student","Teacher"};
//输入种子seed,并用其初始化Random对象
//输入对象生成数量n
//以下是生成n个对象的循环{
//使用random.nextInt(2)从types数组中随机选取元素x并输出
//根据x输入对应的参数来创建相应的对象
//}
//输出n个对象的getPersonNumber
//以下几行输出验证信息,请直接复制粘贴到你的代码中
System.out.println(Student.class.getSuperclass());
System.out.println(Teacher.class.getSuperclass());
try {
System.out.println(Person.class.getDeclaredMethod("getPersonNumber", null));
System.out.println(Student.class.getDeclaredMethod("getPersonNumber", null));
System.out.println(Teacher.class.getDeclaredMethod("getPersonNumber", null));
} catch (Exception e) {
e.printStackTrace();
}
}


### 输入格式:

随机数种子seed
产生对象数量n
n行,每行是每个对象的信息信息。
如果要生成Student对象则依次输入:姓名 年 月 日 入学年份 班级
如果要生成Teacher对象则依次输入:姓名 年 月 日 系 薪水
注意:每个对象的id为每次循环的序数,依次从0到n-1

### 输出格式:
n个对象的类型
n个对象getPersonNumber
验证信息


### 输入样例:

in
3
6
Liz 1986 10 10 CS 2000
Tom 1978 5 7 CS 2500.5
Sally 2000 1 3 2018 Net01
Jerry 1988 6 7 Mechanical 1990
Eliza 2001 2 5 2019 Software02
Li 1978 5 7 cs 2400



### 输出样例:

out
Teacher
Teacher
Student
Teacher
Student
Teacher
Teacher-CS-Liz
Teacher-CS-Tom
Student-2018-Sally
Teacher-Mechanical-Jerry
Student-2019-Eliza
Teacher-cs-Li
这里是验证信息







答案:若无答案欢迎评论

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。