有A、B、C、D四个类,
C包含了A、B都需要用到的方法;
D是SDK的一个类,不可改变;
A继承的C,B继承的D,怎样才能使B也拥有C的方法。
类似多继承的概念?又不能直接复制,这样代码大量重复
public class B extends D{
private class InnerB extends C{
}
}
在B中定义inner class,继承C
要么使用类的聚合,包含一个C的实例,或者用代理的方式,将C的方法提取成接口,然后AB把方法接口定义下,内部调用C
再或者用代码生成器维护重复代码。没办法,Java语言不支持。