多态
1. 多态性是指允许不同子类型的对象对同一消息作出不同的响应。简单的说就是用同样的对象引用调用同样的方法但是做了不同的事情。
2. 多态性分为编译时多态和运行时多态,方法重载(overload)实现的是编译时多态,而方法重写 (override)实现的是运行时多态
3. 运行时多态是面向对象最精髓的东西,要实现运行时多态需要:
1. 方法重写(子类继承父类并重写父类中已有的或抽象的方法)
2.父类引用指向子类对象
3.方法的参数类型是父类,传进来是子类
运行时:
成员变量:父类,成员方法:子类
转型
在进行向下转型之前,最好使用instanceof
关键字进行类型检查,以避免转换错误,务必确保引用指向了正确的子类实例。