今天学习了接口,感觉接口最核心的功能就是通过子类的多实现来实现功能的扩展,同时规范代码.虽然现在知识在用输出语句模拟多态的使用,但通过这种方法的学习更容易理解,也更好记忆.
下面是学习笔记
接口:
具体类多态 几乎没有
抽象类多态 较常用
接口多态 最常用
接口的子类可以是抽象类但是意义不大,抽象类还是要用子类实例化
可以是具体类,但是要重写接口中的所有抽象方法
接口的成员特点:
成员变量:只能是常量并且是静态的(系统会给出默认修饰符public static final)
构造方法:接口中没有构造方法
成员方法:只能是抽象方法,默认修饰符public abstract 自己手动加上最好
implements
抽象类与接口的区别:
成员区别:
成员变量:可以变量,也可以常量;
构造方法:有
成员方法:可以抽象,也可以非抽象
接口
成员变量:只可以是常量
成员方法:只可以抽象
关系:
类与类:
继承:单继承,多层继承
类与接口
实现,单实现,多实现
接口与接口
继承,单继承,多层继承
向上转型,向下转型
多态的用处
多态的缺点:父类引用无法直接访问子类特有的成员(可以使用向下转型)
优点:可以提高可维护性(多态前提)提高代码的可扩展性(生产手机案例)
可以接受父类对象,也可以接受其子类对象
变量名 instanceof 类名
|
|