接口
一种特殊的抽象类
是一个事物额外的功能
如果父类的功能是有功能体实现的,也有只定义功能子类可以具有的功能但是没有实现,可以抽象类
优点
提高代码的复用性
解耦
定义编程规范
接口多实现
使用interface定义接口
组成(1.7之前)
属性:public static final公共的静态的常量(可以省略,默认)
方法:public abstract 公共的抽象的方法(默认,可以不写)
1.8新增
静态方法
使用:只能通过接口名字调用
默认的方法
使用:只能通过实现类的对象使用
注意
接口不能实例化
具体的实现类:实现了接口,就要重写这个接口中的所有抽象方法+按需新增
抽象的实现类:重写部分抽象功能+按需新增
接口需要实现,实现接口使用关键字implements,实现了接口就拥有了接口中的功能(与继承很像)
具体的实现类:实现了接口,就要重写这个接口中的所有抽象方法+按需新增
抽象的实现类:重写部分抽象功能+按需新增
接口的使用:
具体的实现类:实现了接口,就要重写这个接口中的所有抽象方法+按需新增
抽象的实现类:重写部分抽象功能+按需新增
类只能实现接口,不能继承接口,但是类只能继承类,不能实现类 类单继承类,类多实现接口
接口不能继承和实现类,接口只能继承接口,不能实现接口,接口可以多继承接口
一个类要先继承后实现
单例模式
保证一个类只能构建一个实例
饿汉式
在类第一次加载的时候就创建实例
线程安全的
懒汉式
第一次调用功能的时候创建实例
线程不安全的,效率较高
步骤
构造器私有化
私有的静态的该类的引用
公共的静态的访问方式
静态代理模式
真是角色和代理角色实现相同的接口|父类
代理角色持有真实角色的引用
代理行为
优势
降低了与真实角色的交流,减少代码的耦合度,便于后去维护和扩展
简单工厂模式
抽象产品角色:具体产品角色实现的接口|继承的父类
二十三种设计模式
最新推荐文章于 2022-10-10 17:14:03 发布