【发布时间】:2016-11-09 02:04:38
【问题描述】:
假设我们在下面有 2 个class 类型:
class Cola {}
class Milk {}
还有一个Object 实例,其类型是上述类之一:
public Object getDrink(boolean random){
if(random)
return new Cola();
else
return new Milk();
}
Object drink = getDrink(random);
当然我可以通过调用drink.getClass()或drink.getClass().getCanonicalName()左右来查看drink的类。没关系。
我的问题是,我想创建并初始化一个 drink 类类型的 ArrayList,而不是 Object 类型。
ArrayList<Object> list // This is NOT what I want.
ArrayList<drink.getClass()> list2 // Exactly what I want (but not right)
我该怎么做?
【问题讨论】: