只是想知道这是否是正确的做法。我想构造我的参数化类的实例,其中一个实例变量是一个泛型类型。下面的代码工作,但我在主要方法中得到了很多警告“SomeObject是一个原始类型,对泛型类型SomeObject的引用应该被参数化”。实例化参数化类
public class SomeObject<T> {
private String description;
private T value;
public SomeObject(String description, T value) {
this.description = description;
this.value = value;
}
public static void main(String args[]){
List <SomeObject> objectList = new ArrayList<SomeObject>();
objectList.add(new SomeObject("Object 1: ", true));
objectList.add(new SomeObject("Object 2: ", 888.00));
objectList.add(new SomeObject("Object 3: ", "another object"));
objectList.add(new SomeObject("Object 4: ", '4'));
for (SomeObject object : objectList){
System.out.println(object.getDescription() + object.getValue());
}
}
}
哪一部分的错误你不明白吗?你应该使用你的泛型。 – SLaks
应该是'new SomeObject()'而不是'new Object()'吗? – Flurin
尝试参数化对象创建,就像你为arraylist所做的那样 –