继承
子类继承父类的特征和行为,使得子类具有父类的各种属性和方法。或子类从父类继承方法,使得子类具有父类相同的行为。
特点:在继承关系中,父类更通用、子类更具体。父类具有更一般的特征和行为,而子类除了具有父类的特征和行为,还具有一些自己特殊的特征和行为。
表示父类和子类的术语:父类和子类、超类和子类、基类和派生类。
多态
多态性就是发送消息给某个对象,让该对象自行决定响应何种行为。指允许不同类的对象对同一消息做出响应。即同一消息可以根据发送对象的不同而采用多种不同的行为方式。多态的特征是表现出多种形态,具有多种实现方式。或者多态是具有表现多种形态的能力的特征。或者同一个实现接口,使用不同的实例而执行不同的操作。
多态存在的三个必要条件
一、要有继承;
二、要有重写;
三、父类引用指向子类对象。
总结
1、为什么子类类型的对象实例可以赋给超类引用
自动实现向上转型。通过该语句,编译器自动将子类实例向上移动,成为通用类型BaseClass。
2、不能把父类对象引用赋给子类对象引用变量
在Java里面,向上转型是自动进行的,但是向下转型却不是,需要我们自己定义强制进行。