多态的前提:1,继承 2.方法的重写 3,父类引用指向子类对象
好处:提高了代码的维护性(继承保证)
提高了代码的扩展性(多态保证)
当作形式参数,可以接收任意子类对象
弊端:不能使用子类特有属性和行为。
非静态的方法是动态绑定,编译看左边,运行看右边
其他的成员变量、成员方法、静态方法都是静态绑定,编译运行看左边
abstract 不一定有抽象方法,有构造方法
默认修饰符:public abstract void
interface 里面的方法一定要抽象,没有构造方法
类实现关键字implements,可抽可不抽
成员变量的默认修饰符:public static final
成员方法:public abstract
类与类 :单继承extends "is a "体现共性
类与接口:多实现implements "like a"体现扩展
接口与接口:多继承extends
abstract和interface的区别:
成员变量 构造方法 成员方法
抽象: 变量&常量 有 可抽可不抽
接口: 常量 无 抽
|
|