public interface MyInterface1<T extends MyAbstractClass> {
...
}
我不想再拍接口MyInterface2採取MyInterface1作爲通用型和MyInterface2我要引用的實際類型的接口實際MyInterface1
public interface MyInterface2<INTERFACE extends MyInterface1<MYCLASS>> {
MYCLASS returnInstanceOfMyClass();
}
所以我想說的是,法「returnInstanceOfMyClass」返回給MyInterface2實際MyInterface1的實際噸。
的事情是,我不允許寫以下
public interface MyInterface2<INTERFACE extends MyInterface1<MYCLASS>> {
允許我寫
public interface MyInterface2<INTERFACE extends MyInterface1<?>> {
但當時我不能夠引用的實際類型T的MyInterface1在MyInterface2中的方法簽名中 - 因爲在引用時我沒有給它使用名字。
我希望能夠做一個類型安全的方式
class MyClass extends MyAbstractClass {
...
}
MyClass c = new MyInterface2<MyInterface1<MyClass>>.returnInstanceOfMyClass();
沒有鑄造MyClass的應該是必要的下面,因爲它可以看到,給MyInterface2實際類MyInterface1的是MyClass的,這就是從returnInstanceOfMyClass返回的內容。
如何做到這一點?
無法實例接口。 – Antimony