[英]How to reuse common extended Interface method in Java?
I have these three Interfaces as part of the Fluent Interface API (where a lot of method chaining happens): 我将这三个接口作为Fluent接口API的一部分(其中发生了很多方法链接):
interface VerifierA extends VerifierC {
VerifierA method1();
// other methods elided
}
interface VerifierB extends VerifierC {
VerifierB method1();
// other methods elided
}
interface VerifierC {
VerifierA commonMethod();
}
By declaring commonMethod()
as VerifierA
I can then chain methods commonMethod().method1()
but not commonMethod().method2()
; 通过将
commonMethod()
声明为VerifierA
我可以链接方法commonMethod().method1()
而不是commonMethod().method2()
;
How can I have commonMethod()
in VerifierC
return to both VerifierA
or VerifierB as needed? 如何在
VerifierC
让commonMethod()
根据需要返回到VerifierA
或VerifierB?
you could solve it with generics: 您可以使用泛型来解决它:
interface VerifierA extends VerifierC<VerifierA> {
VerifierC<VerifierA> method1();
}
interface VerifierB extends VerifierC<VerifierB> {
VerifierC<VerifierB> method1();
}
interface VerifierC<T> {
T commonMethod();
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.