多态:同类型的对象,表现出不同的形态
父类类型 对象名称 = 子类对象;
1.多态的几个条件
a.必须要有继承关系
b.父类指向子类 Fu F = new Zi();
d.有方法重写
2.在多态中,属性编码看左边,运行也看左边。方法编码看左边,运行看右边。(简而言之就是用子类的方法)
这行打印出来的是:动物
3.优点和缺点
优点:可以接受子类对象,便于扩展和维护,利于解耦合
缺点:父类不能使用子类的独有方法,解决方法为:转为子类 用instaceof 关键字
a instaceof d-----如果a是b类型的对象返回true,则可以进行转换
总结图
有关多态的练习,请务必多看两遍 Polymorphism 系列代码
4.其他知识点
a.关于类的使用:导包,然后再使用,不同包中同名类需要全路径
b.final 修饰词
修饰属性,方法,类名
注:继承也不能被重写
以下是法则
final修饰引用还是有点不懂。
c.各类修饰符的作用和范围
d.代码块
局部代码块:用一次就销毁,节省空间
构造代码块:在构造函数的时候使用,相同语句提取出来,建议用一下两种方式
静态代码块:用一次就销毁,主要是为了创建初始角色,防止被多次调用的时候不断创建角色