Animal dog = new Dog();
父类Animal定义的引用变量dog,他存放的应该是Dog实例对象的地址啊,java是如何区分我dog引用变量引用的到底是Animal还是Dog?
Animal dog = new Dog(),是new了一个Dog的对象(dog),这个dog是指向Dog()。Animal是其返回类型,可以返回Dog 或者其父类(Animal)。