面向对象6——多态性
多态性
instanceof关键字
抽象类的应用
接口的应用
多态性:
1.多态性的体现
方法的重载与重写
对象的多态性
2.对象的多态性
向上转型:程序会自动完成
父类 父类对象=子类实例对象
向下转型 :强制类型转换
子类 子类对象=(子类)父类实例对象
instanceof关键字:
在Java中可以使用instanceof关键字来判断一个对象到底是不是一个类的实例
还是在多态性基础上 继承 然后 父类 父类对象 子类实例
向下转型 子类 子类对象 父类实例
Java讲义补充:
//编译时类型和运行时类型不一样 因此才存在多态
多态存在的三个必要条件一、要有继承;二、要有重写;三、父类引用指向子类对象。
Java允许把一个子类对象直接赋给一个父类变量引用类型,无需任何类型转换,或者称为向上转型,由系统完成。
同一个类型的变量,调用同一个方法里时呈现出不同的行为特征,这就是多态。
面向对象6之 抽象类的应用
//抽象类的应用 抽离可复用的代码
//继承抽象类的时候需要重写方法
抽象类不能直接实例化 而是通过子类去实例化
面向对象接口的应用
早年同窗始相知,三载瞬逝情却萌。年少不知愁滋味,犹读红豆生南国。别离方知相思苦,心田红豆根以生。