【发布时间】:2013-05-20 18:45:46
【问题描述】:
我正在学习基本的 Java,阅读 Head First Java 的基本概念(多态、抽象类/方法、覆盖等),现在我正在做一个非常简单的示例,其中遥控器用于电视、家庭影院和 Cd 播放器。一个遥控器必须完美适用于所有 3 台设备。现在我所做的是..
- Remote 是所有这 3 类电视、家庭影院、CD 的超类 播放器。
- 开、关、音量+-、频道+-等基本功能在 超类这些被覆盖
-
那些不常见的方法在接口中实现,例如 Eject , Insert , 用于 Cd 播放器 , 电视的显示设置和 剧院等。
那么这种方法可以吗?
将一个类作为超类并在其中实现其余代码 接口。
还有一点,if one method is common in Tv and theater like Display settings should i implement interface or change my class hierarchy .。
如果这是愚蠢的问题,请不要介意,并指导我了解这些 oop 设计技术,谢谢
【问题讨论】:
-
这意味着只是一个演示先生而不是原始遥控器......只是试着理解我将使用布尔值输入 on off .. +,- for volume .. 并且从 BufferedReader 等获取输入...不要考虑我为一些原始遥控器编码它必须在控制台上显示输入和输出..就是这样
-
遥控器如何成为电视的超级类?电视是一种特殊的遥控器吗? :P
-
@Patashu 我确实忽略了 is-A 测试 ....那是我的错误
-
我明白了,现实生活的抽象,太棒了。
-
我觉得我说/打得很好
标签: java class oop inheritance polymorphism