多态:多种形态
class a{
}
class b extends a{
}
把 b 看作 b b b1 = new b(); // 常态
把 b 看作 a a b1 = new b(); // 多态
多态:父类类型的引用指向了子类类型的对象
多态的弊端: 只能调用父类中的功能,子类特有的功能不能被调用
多态的优点:提高了程序的扩展性,前期定义的功能可以被后期出现的事务使用
存在多态时向下转型后就可以使用子类对象特有的功能
a b1 = new b();//向上转型
b b2 = ( b )b1; //向下转型
使用 instanceof 判断当前对象是谁的实例
多态中的成员变量
在存在多态时只能调用父类中的变量,如果有同名那么访问的是父类中的变量
多态中的成员函数
在存在多态时只能调用父类中的方法,如果有同名函数并且子类重写了该方法那么调用子类中的方法,如果没有重写此方法则调用父类中的方法
多态中的静态成员函数
如果子父类中有同名静态函数,在存在多态时调用的是父类中的方法
接口也适用于多态