我正在学习基础Java知识,从《Head First Java》中阅读基本概念(多态性、抽象类/方法、覆盖等)。现在我正在做一个非常简单的例子,在其中使用遥控器来控制电视、家庭影院和CD播放器。一个遥控器必须完美地适用于所有3个设备。现在我所做的是...
- Remote是这三个类(电视、家庭影院、CD播放器)的超类。
- 基本功能如开关、音量+/-、频道+/-等都在超类中被覆盖。
那些不常见的方法被实现在接口中,例如插入、弹出CD播放器,电视和家庭影院的显示设置等。
所以这种方法可以吗?
将一个类作为超类,然后在接口中实现其余代码。
另外一个问题是,如果在电视和家庭影院中有一个共同的方法(例如显示设置),我应该实现接口还是更改我的类层次结构?
请不要介意这个愚蠢的问题,并指导我这些面向对象设计技术,谢谢。