(我是一个新手开发商还在学习最佳实践和Java - 任何帮助/方向,将不胜感激,谢谢!)如何在没有多重继承的情况下避免代码重复(即在java中)?
假设我有以下情况:
ClassA
扩展抽象ClassB
这延伸摘要ClassC
。ClassD
延伸摘要ClassE
其中延伸摘要ClassF
其中延伸摘要ClassC
。
[ClassC
是父类]
其中ClassA
和ClassD
有一组相同的属性,吸气剂,&制定者。
我想避免代码重复(属性,getters,setters)。我也想避免写出不同的方法doSomething(ClassA class, ...)
和doSomething(ClassD class, ...)
,这些方法除了参数类型外都是相同的。
如果这两个类直接从ClassC
继承,我会让它们扩展一个拥有所有getter和setter和属性的类,并将该类型传入方法doSomething(..)
。由于ClassA
和ClassD
不能扩展多个类,因此处理这种情况的最佳方法是什么?
那么在Java中,你可以使用* interfaces *。 –
你有没有具体的例子说明你为什么会让互通图变得如此之深? –
所以D是一个E是一个F是一个C.这是有点太多的继承使用。 –