多态
概念:
1.多态是同一个行为具有多个不同表现形式或形态的能力。
2.多态就是同一个接口,使用不同的实例而执行不同操作。
优点:
1.可替换性:多态对已存在的代码具有可替换性。
2.可扩充性:多态对代码具有可扩充性。增加新的子类不影响已存在类的多态性、继承性,以及其他特性的运行和操作。实际上新加子类更容易获得多态功能。
3.接口性:多态是超类通过方法签名,向子类提供了一个共同接口,由子类来完善或者覆盖它而实现的。
4.灵活性:它在应用中体现了灵活多样的操作,提高了使用效率。
5.简化性:多态简化了对应用软件的代码编写和修改过程。
使用多态实现思路:(实现多态的三个要素)
1.编写具有继承关系的父类和子类
2.子类重写父类方法
3.使用父类的引用指向子类的对象
实现多态的形式:
1.使用父类作为方法形参实现多态。
2.使用父类作为方法返回值实现多态。
父类到子类的转换
向下转型(强制类型转换)
eg:
Pet pet=new Dog(“欧欧”,“雪纳瑞”);
Dog dog=(Dog)pet;
子类到父类的转换
向上转型(子类转换为父类,自动进行类型转换)
instanceof运算符
语法
对象 instanceof 类或接口
经验
instanceof通常和强制类型转换结合使用