设计模式

1、单例模式
单例模式的构造方法是私有的,且必须自己创建自己的唯一实例,且其他对象使用是只能使用此实例;
方法一:利用synchronized 关键字保证线程安全性;
private static SingleTon single = null;
private SingleTon () {}
public static synchronized SingleTon getInstance() {
if (single == null) {
single = new SingleTon();
}
return single;
}
方法二:利用静态内部类
private static class LazyHolder {
private static final SingleTon INSTANCE = new SingleTon();
}
public static final SingleTon getInstance2() {
return LazyHolder.INSTANCE;
}
2、工厂模式
是为创建对象提供接口;
分为简单工厂模式、工厂方法模式、抽象工厂模式
使用工厂模式的原因:
(1)在编码时不能预见需要创建哪种类的实例;
(2)系统不应依赖于产品实例如何被创建、组合和表达的细节;
1>、简单工厂方法:工厂类角色、抽象产品角色、具体产品角色;
针对于一个产品等级结构;
2>、工厂方法模式:抽象工厂角色、具体工厂角色、抽象产品角色、具体产品角色;
面向多个产品等级结构;
3、代理模式
4、适配器模式:已有相同功能的代码,但是接口不兼容,不能直接调用
分类:类适配器、对象适配器
5、策略模式:
6、23种设计模式:https://www.cnblogs.com/sev7en-/p/5904282.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值