如果把一箱苹果当成一箱水果的话,就可以在list里装入各种不同的水果子类型,这样做是错误的
因为 参数化类型是不考虑类型参数的继承关系的
Vector<String> v = new Vector<Object>();
错误!从编译器的角度看v 里面装的是String ,但是你如果这样写,那实际上内存里装的什么都有可能 相同的道理
你还可以这样理解 一箱水果不是一箱苹果,因为它有可能是一箱另外一种水果
Vector<Object> v = new Vector<String>(); 也是错误的
就是说Vector可以装Object ,但是实际的类型只能装String
希望能帮到你 |