单例模式
- 一个对象只有一个实例,后续调用都是之前new好的实例
- spring的依赖注入默认是单例
观察者模式
- 可以理解为注册中心吧,被观察者如果做出了特定的行为时,就会通知观察者
- 一对多
- 当一个对象状态发生改变,其他依赖它的对象都会得到通知并做出相应行为(更新)
装饰者模式
- 比如手抓饼,可以加火腿、鸡蛋
- 对已有的业务做进一步封装,增加额外的功能
- 通过继承实现
适配器模式
- 理解成手机充电器的转接口吧,为了适应不同参数输入,则改变输入源
工厂模式
工厂方法模式
抽象工厂模式
- 与上述不同的是,上面的生产一个,这个生产多个
/抽象工厂类
public abstract class AbstractFactory {
public abstract Vehicle createVehicle();
public abstract Weapon createWeapon();
public abstract Food createFood();
}
//具体工厂类,其中Food,Vehicle,Weapon是抽象类,
public class DefaultFactory extends AbstractFactory{
@Override
public Food createFood() {
return new Apple();
}
@Override
public Vehicle createVehicle() {
return new Car();
}
@Override
public Weapon createWeapon() {
return new AK47();
}
}
//测试类
public class Test {
public static void main(String[] args) {
AbstractFactory f = new DefaultFactory();
Vehicle v = f.createVehicle();
v.run();
Weapon w = f.createWeapon();
w.shoot();
Food a = f.createFood();
a.printName();
}
}
https://blog.csdn.net/onlyoncelove/article/details/81456024