1、
Java中使用动态绑定和重载机制来实现多态,首先得掌握三个基础技术概念:
①、向上转型技术
转型技术:当操作符两端的数据类型不一致的时候,就会发生转型
引用数据类型同样存在转型技术,但是,转型的两个类必须存在继承关系
沿着子类像父类向上转型是自动转型,而从父类向子类必须使用强制类型转换才能实现向下转型
向上转型(自动转型):父类的引用可以指向子类的对象
向下转型(强制转型):1、编译有可能通过;2、但运行起来有风险.
必须保证运行的最终效果是父类引用指向子类对象或本类引用指向本类对象
当父类引用指向子类对象的时候,只能调用到来自父类的属性和行为(受访问修饰符约束)
当本类引用指向本类对象的时候,能看到本类所有的属性和行为(受访问修饰符约束)
②、instanceof关键字
也是运算符,返回布尔值
③、动态绑定技术
是指在运行时根据具体对象的的类型进行绑定。通过动态绑定,JVM必须沿着继承层次树向下找,判断一个方法是否被重写,
如果方法被重写,在运行时就执行子类中的方法,而不是编译时调用的父类方法。
2、
抽象方法只有方法的声明,没有方法的实现,连括号都没有。
当一个类只要有一个抽象方法,这个类就是抽象类,否则自己也是抽象类。