我有两个类ModalWinodw和SkinnableWindow都扩展了Window类。我想创建具有两个类的函数的类,但是在Java类中可以只扩展一个超类。那么如何解决这个问题呢?扩展两个类
Q
扩展两个类
0
A
回答
2
Composition(至少有一个,可能两个“基”类都是成员对象)。根据需要还有很多代理(有些编辑会在这里帮助你)。
Yahoo Java OO!
编辑:尽管组合是“要走的路”(在不重新设计类层次结构的情况下),但取决于如何使用接口和主格名称,它有一些特定的限制。如果你需要将“特定”类型(ModalWindow或SkinnableWindow)传递到任何地方,那么你几乎处于一个受到伤害的世界,因为你的新类最多只能有一个作为祖先(如果它是一个或更少,你可能能够滑过)。尽可能使用接口并尽可能使用类似的可以减少这种伤害。
快乐编码。
1
您可以使用组合。让你的班级有一个(或两个)字段并将他们的方法公开为传递方法。
3
这就是那句“Composition在传承”,其实适合的情况下...
我会创建一个合并,我想既适合类的功能的接口。
然后我会创建一个实现我的新界面的类。该类将包含ModalWindow和SkinnableWindow的一个实例。根据所调用的功能,我的类只需将方法调用传递给适当的类,并在需要时利用每个类的功能。
相关问题
- 1. 如何扩展两个类
- 2. PHP-OOP扩展两个类?
- 3. Java的抽象类扩展两个类
- 4. iOS - 在一个中扩展两个类
- 5. Typescript:如何扩展两个类?
- 6. Codeigniter - 如何扩展两个核心类
- 7. Zend控制器扩展了两个类
- 8. jQuery不扩展这两个类
- 9. 爪哇 - 扩展扩展一个Thread类
- 10. 扩展一个扩展类的模块
- 11. 扩展单个类
- 12. 一个类是否可以扩展两个或更多类
- 13. 你可以在一个类中扩展两个类吗?
- 14. php oop如何连接两个类(从一个父类扩展)
- 15. 一个类可以扩展两个类吗?
- 16. Java中的每个类扩展Object.Then如何扩展其他类。因为一个类只能扩展一个类
- 17. 扩展扩展类型
- 18. 扩展扩展类Zend_Db_Table_Row_Abstract
- 19. 如何使用另外两个类来扩展类?
- 20. 从另一个扩展参数化泛型类扩展类
- 21. 是否有可能扩展一个库类扩展MY_Controller类
- 22. 如何扩展多个类
- 23. 动态扩展一个类
- 24. 每个类都扩展Object?
- 25. 替代扩展多个类
- 26. 如何扩展2个类?
- 27. 扩展一个GEOS类
- 28. 每个SASS扩展类
- 29. 如何扩展这个类?
- 30. 参数扩展一个类
这是接口有时比类更好的一个例子。 – 2010-11-03 17:50:15
这也是为什么我不喜欢Java“OO”的一个例子:-) – 2010-11-03 19:14:37