java interface泛型_java – 使用泛型和接口实现组合
我正在努力實現以下目標:
我的類X有一個通用的Y.然而,這個泛型Y需要訪問X的資源,我想通過接口來處理它,以便允許其他人繼承任意選擇的類.
然而,我目前的方法會產生一系列泛型:
public interface X>> {
Object getO();
}
public interface Y>> {
void doSomething();
}
我想要實現的目標:
public class Goal implements Y {
private final x minix;
public Goal(x minix) {
this.minix = minix;
}
@Override
public doSomething() {
x.getO();
}
}
如果沒有使用抽象類的常用方法和組合的構造函數實現,我如何實現我的目標?
最佳答案 接口的泛型類型參數相互依賴.要解決遞歸問題,必須為每個接口引入第二個類型參數:
interface X, B extends X> {
A getY(); //example
Object getO();
}
interface Y, B extends X> {
B getX(); //example
void doSomething();
}
目標類:
public class Goal, B>> implements Y, B> {
private final B minix;
public Goal(B minix) {
this.minix = minix;
}
@Override
public B getX() {
return minix;
}
@Override
public void doSomething() {
minix.getO();
}
}
總結
以上是生活随笔為你收集整理的java interface泛型_java – 使用泛型和接口实现组合的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java日志模块_Java源码初探_lo
- 下一篇: java 图片分割_Java atlas