如何在Java中将通用对象添加到列表中?
当前,我有两个类具有相同的功能,并且希望将它们集成在一起
public class MyClass1 {
private List<Object1> myList = new ArrayList<>();
public void addList(Object1 o) {
myList.add(o);
}
}
public class MyClass2 {
private List<Object2> myList = new ArrayList<>();
public void addList(Object2 o) {
myList.add(o);
}
}
类似
public class MyClass {
private List<Object> myList = new ArrayList<>();
public void addList(Object o) {
myList.add(o);
}
}
答案 0 :(得分:3)
您可以使自己的类通用:
public class MyClass<T> {
private List<T> myList = new ArrayList<>();
public void addList(T o) {
myList.add(o);
}
}
答案 1 :(得分:1)
您可以使两个类Object1
和Object2
都实现相同的接口'ObjInterface'
public class MyClass {
private List<ObjInterface> myList = new ArrayList<>();
public void addList(ObjInterface o) {
myList.add(o);
}
}
答案 2 :(得分:1)
如果您希望该类仅包含Object1或Object2,并且不包含其他任何内容,则可以结合使用其他两个答案:
<a href="#" id="play">play</a>
并将db
添加到Object1和Object2的定义中。
如果将两个类共有的方法添加到cached_db
,则可以在user.session_set.all().delete()
中的django-qsessions
对象上调用这些方法,因为它们肯定是{{ 1}}。