为什么向下转型不能直接调用方法,而是必须接收再调用?如图就是为什么不能1,而是必须要进行2
因为变量o1的引用指向的是对象类型是Object类型,那它就只能调用Object类的方法,本来只有继承或者实现接口的方法才能把子类的对象指向父类的引用类型,但是因为java所有的类型都是Object类型,所以可以用Object类型接收任何引用,如果是继承或者实现关系的时候,如果父类的引用指向的是子类的引用,那就只能调用父类提供的非private方法,如果这个方法子类重写了,就会去调用子类的实现