Java设计模式:使用继承、抽象类和接口实现门系统
根据题目要求,可以设计如下的类和接口:
- 接口:Imen
public interface Imen {
void openDoor();
void closeDoor();
}
- 抽象类:AbstractDoor
public abstract class AbstractDoor implements Imen {
@Override
public void openDoor() {
System.out.println("打开门");
}
@Override
public void closeDoor() {
System.out.println("关闭门");
}
// 可以在这里定义抽象方法,让子类去实现具体功能
public abstract void theftproof();
public abstract void waterproof();
public abstract void bulletproof();
}
- 实现类:Door
public class Door extends AbstractDoor {
@Override
public void theftproof() {
System.out.println("防盗");
}
@Override
public void waterproof() {
System.out.println("防水");
}
@Override
public void bulletproof() {
System.out.println("防弹");
}
}
这样,Door类就实现了Imen接口,并继承了AbstractDoor抽象类,可以对门进行开门、关门的操作,同时也实现了防盗、防水、防弹等功能。
使用示例:
public class Main {
public static void main(String[] args) {
Imen door = new Door();
door.openDoor(); // 打开门
door.closeDoor(); // 关闭门
((AbstractDoor) door).theftproof(); // 防盗
((AbstractDoor) door).waterproof(); // 防水
((AbstractDoor) door).bulletproof(); // 防弹
}
}
输出结果:
打开门
关闭门
防盗
防水
防弹
原文地址: https://www.cveoy.top/t/topic/pUCy 著作权归作者所有。请勿转载和采集!