【发布时间】:2018-10-15 16:32:53
【问题描述】:
设置是这样的。
我有多个接口(即 A、B、C)并且我有实现它们的类(Z 和 Y)
X 实现 A、B{} 和 Y 实现 A、C {} 和 Z 实现 B、C{}
接口 A,B,C 中的某些函数具有相同的定义,我不想在每个类中重新键入它们,我该怎么办?
我用谷歌搜索了它,并注意到一种解决方案是在界面中使用方便的关键字 default。但是如果我被禁止使用这个关键字,比如代码兼容Java8之前的版本怎么办?
有没有更好的方法来处理这个问题?
【问题讨论】:
-
你能更清楚地描述问题吗?如果
A、B和C都共享一个签名相同的方法f,而W实现了这三个接口,你仍然只需要编写一次实现。 -
您应该考虑使用 java 8 甚至 11,因为 Oracle 不支持旧版本并且大多数人已经迁移到 java 8 或 11。
-
让A有函数:a1,a2,a3 B有b1,b2,b3 C有c1,c2,c3 a1, b1和c1定义相同,否则定义不同
标签: java interface abstract-class