(1)定义一个学习接口,Studylnterface,提供两个方法:上课attendClass,考试exam。 (2)定义一个学生抽象类Student,Student实现StudyInterface接口,重写考试exam方法,输出:“在学 校参加期末考试”,自行设计学生类其他信息。 (3)定义两个子类:大学生类CollegeStudent和在职研究生类JobGraduateStudent继承抽象类Student, 重写上课attendClass方法:大学生类输出“在学校教室上课”,在职研究生类输出“在网上上课”,在职 研究生类提供一个描述工作的work方法。 (4)编写测试类,建立大学生类和在职研究生类对象,调用对象的所有方法进行测试。
时间: 2024-03-25 09:41:42 浏览: 90
下面是代码实现:
```java
// 定义学习接口
interface StudyInterface {
void attendClass();
void exam();
}
// 定义学生抽象类
abstract class Student implements StudyInterface {
String name; // 学生姓名
int age; // 学生年龄
public Student(String name, int age) {
this.name = name;
this.age = age;
}
@Override
public void exam() {
System.out.println("在学校参加期末考试");
}
}
// 定义大学生类
class CollegeStudent extends Student {
public CollegeStudent(String name, int age) {
super(name, age);
}
@Override
public void attendClass() {
System.out.println("在学校教室上课");
}
}
// 定义在职研究生类
class JobGraduateStudent extends Student {
public JobGraduateStudent(String name, int age) {
super(name, age);
}
@Override
public void attendClass() {
System.out.println("在网上上课");
}
public void work() {
System.out.println("我正在工作");
}
}
// 测试类
public class Test {
public static void main(String[] args) {
CollegeStudent collegeStudent = new CollegeStudent("张三", 20);
JobGraduateStudent jobGraduateStudent = new JobGraduateStudent("李四", 25);
collegeStudent.attendClass();
collegeStudent.exam();
jobGraduateStudent.attendClass();
jobGraduateStudent.exam();
jobGraduateStudent.work();
}
}
```
输出结果如下:
```
在学校教室上课
在学校参加期末考试
在网上上课
在学校参加期末考试
我正在工作
```
阅读全文