假设我们有以下界面:
interface Addable {
Addable add (Addable element);
}
现在我想声明两个实现上述接口(interface)的类,比如MyList
和MyArray
。我怎样才能做到这一点,同时防止将 MyArray
对象添加到 MyList
中,反之亦然?
没有 if
语句和 instanceof
有没有办法做到这一点?
最佳答案
interface Addable<T extends Addable<T>> {
T add (T element);
}
class MyList implements Addable<MyList> {
public MyList add(MyList element) {
return null;
}
}
class MyArray implements Addable<MyArray> {
public MyArray add(MyArray element) {
return null;
}
}
关于java - 在Java中,如何区分实现相同接口(interface)的类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12331689/