Java设计一个学校接待的程序,招待不同身份的人的食宿。接口是身份,食,宿。身份对应学生,教师,学生家长。完成接口和实现接口类的定义。然后使用接口回调的方式测试上述类的编写。学生的“食”对应食堂,宿对应宿舍。老师食对应教师食堂,宿对应学校公寓。家长食对应招待所,宿对应招待所
时间: 2024-05-04 20:19:46 浏览: 74
以下是Java实现:
```java
// 定义接口
interface Reception {
void food();
void accommodation();
}
// 学生类实现接口
class Student implements Reception {
@Override
public void food() {
System.out.println("食堂");
}
@Override
public void accommodation() {
System.out.println("宿舍");
}
}
// 教师类实现接口
class Teacher implements Reception {
@Override
public void food() {
System.out.println("教师食堂");
}
@Override
public void accommodation() {
System.out.println("学校公寓");
}
}
// 学生家长类实现接口
class Parent implements Reception {
@Override
public void food() {
System.out.println("招待所");
}
@Override
public void accommodation() {
System.out.println("招待所");
}
}
// 测试类,使用接口回调方式测试
public class Test {
public static void main(String[] args) {
Reception reception = new Student();
reception.food();
reception.accommodation();
reception = new Teacher();
reception.food();
reception.accommodation();
reception = new Parent();
reception.food();
reception.accommodation();
}
}
```
使用接口回调方式测试时,我们先声明一个`Reception`接口类型的变量`reception`,然后根据不同的身份类型实例化不同的对象,将对象赋值给`reception`变量,并调用`reception`的方法实现不同的食宿。
阅读全文