JAVA list中如何将类型为子类的list引用赋值给类型为父类的list引用?

Animal是Dog父类,我想把dog赋值给animal,请问有办法吗?
我的想法是list dog的引用赋值给list animal的引用,语法上应该怎么写?

List<Animal>和List<Dog>不是一个类型,也不是继承关系。
这里的泛型应该写作
List<? extends Animal> list = new ArrayList<Dog> ();追问

那还有一个继承自animal的cat,我Cat cat = new cat();
想上面写了后list.add(cat)?可以吗?为什么呢?谢谢!!!

温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-09-15
可以强制转换,但是会出问题,编译的时候没问题,但是使用的时候,会出问题
第2个回答  2014-09-15
强制转换就行了(List<Animal>)dog
相似回答