多态
多态的格式与使用
代码中体现多态性,其实就是一句话,父类引用指向子类对象
格式:
父类名称 对象名 = new 子类名称();
或者
接口名称 对象名 = new 实现类名称();
多态中成员变量的使用特点
访问成员变量的两种方式:
1、直接通过对象名称访问成员变量,看等号左边是谁,优先用谁,没有则向上找。如:
//使用多态的写法
Fu obj = new Zi();
System.out.println(obj.num);//父 10
等号左边是Fu,所以num是Fu类里面的
2、间接通过成员方法访问成员变量,看该方法属于谁,优先用谁,没有则向上找。
//子类没有覆盖重写,就是父,10。否则就是子,20。
obj.showNum();
多态中成员方法的使用特点
在多态的代码中,成员方法的访问规则是:
看new的是谁,就优先用谁,没有则向上找
口诀:编译看左边,运行看右边。
对比一下:
成员变量:编译看左边,运行还看左边
成员方法:编译看左边,运行看右边。
使用多态的好处
向上转型、向下转型