mul*_*lle 7 java generics interface
我想为这两个类创建一个通用接口,但我不确定如何以正确的方式指定泛型.
public class ThingA implements Thing {
public ThingA createCopy(ThingA original);
}
public class ThingB implements Thing {
public ThingB createCopy(ThingB original);
}
Run Code Online (Sandbox Code Playgroud)
我试过这个.
public interface Thing<V extends Thing<V>> {
public V createCopy(V original);
}
Run Code Online (Sandbox Code Playgroud)
但是我仍然可以做这样的事情,这是不允许的.
public class ThingB implements Thing<ThingA> {
public ThingA createCopy(ThingA original);
}
Run Code Online (Sandbox Code Playgroud)