向上转型:
1.本质: 父类的引用指向子类的对象
2.语法: 父类类型 引用名 = new 子类类型();
3.特点: 编译类型看左边,运行类型看右边。
可以调用父类的所有成员(需要遵守访问权限)
不能调用子类特有成员;
最终运行看子类效果具体实现。(先在子类中找方法子类没有再去从父类中找。)
向下转型:
1.语法: 子类类型 引用名 = (子类类型)父类引用;
2.只能强转父类的引用,不能强转父类的对象
3.要求父类的引用必须指向的是当前目标类型的对象
4.可以调用子类类型中所有的成员。(特有的)