3 回答

TA貢獻1851條經(jīng)驗 獲得超3個贊
您可以使自己的類泛型:
public class MyClass<T> {
private List<T> myList = new ArrayList<>();
public void addList(T o) {
myList.add(o);
}
}

TA貢獻1825條經(jīng)驗 獲得超4個贊
如果希望類僅包含 Object1 或 Object2,而不包含任何其他內(nèi)容,則可以組合其他兩個答案:
interface ObjInterface {
// may be empty
}
public class MyClass<T extends ObjInterface> {
private List<T> myList = new ArrayList<>();
public void addList(T o) {
myList.add(o);
}
}
MyClass<Object1> object1only = new MyClass<>();
MyClass<Object2> object2only = new MyClass<>();
并添加到對象 1 和對象 2 的定義中。implements ObjInterface
如果將兩個類共有的方法添加到 中,則可以在 中的對象上調(diào)用這些方法,因為它們保證是 的子類。ObjInterfaceTMyClassObjInterface

TA貢獻1790條經(jīng)驗 獲得超9個贊
您可以創(chuàng)建這兩個類并實現(xiàn)相同的接口“Obj接口”O(jiān)bject1Object2
public class MyClass {
private List<ObjInterface> myList = new ArrayList<>();
public void addList(ObjInterface o) {
myList.add(o);
}
}
添加回答
舉報