Animal animal = new Dog();//正確
Dog dog = new Animal();//錯誤
//錯誤!!
ArrayList<Dog> dogs1 = new ArrayList<Animal>();
//錯誤!!List<Dog>不是一個List<Animal>, 父類列表可以添加其他不同的子類對象
ArrayList<Animal> animals1 = new ArrayList<Dog>();
animals1.add(new Cat());//會出現這樣的問題
//正確
List<Animal> list = new ArrayList<Animal>();
//正確
ArrayList<Dog> dogs = new ArrayList<Dog>();
//錯誤!!List<Dog>不是一個List<Animal>
ArrayList<Animal> animals = dogs;
animals.add(new Cat());
//正確
List<Dog> dogList = dogs;
//正確
ArrayList<Object> objects = new ArrayList<Object>();
//正確
List<Object> objects1 = objects;
//錯誤!!!
ArrayList<Object> objects2 = new ArrayList<Dog>();