用java语言创建一个测试类TestMain,其中包含: (1)调用Undergraduate类中的构造方法对StudentInterface类型的变量sti赋值,其中学号、姓名、性别均为考生真实信息。 (2)调用findStudent方法输出学生信息。 (3)能用对象sti调用getDepartment()方法吗?若能则给出结果,若不能简单说明原因。
时间: 2023-04-07 13:01:39 浏览: 145
可以回答这个问题。下面是代码:
```
public class TestMain {
public static void main(String[] args) {
// 调用Undergraduate类中的构造方法对StudentInterface类型的变量sti赋值
StudentInterface sti = new Undergraduate("学号", "姓名", "性别");
// 调用findStudent方法输出学生信息
findStudent(sti);
// 不能用对象sti调用getDepartment()方法,因为StudentInterface接口中没有定义getDepartment()方法
// 如果需要调用getDepartment()方法,需要将sti强制转换为Undergraduate类型
// Undergraduate ug = (Undergraduate) sti;
// System.out.println(ug.getDepartment());
}
public static void findStudent(StudentInterface sti) {
System.out.println("学号:" + sti.getNumber());
System.out.println("姓名:" + sti.getName());
System.out.println("性别:" + sti.getGender());
}
}
```
阅读全文