学习设计模式笔记--单例模式
来源:互联网 发布:淘宝网客服中心 编辑:程序博客网 时间:2024/05/29 12:28
单例设计模式非常简单,有两种基本方式,饿汉式和懒汉式
单例主要特点: 构造私有,提供public 静态返回实例的方法
直接看代码:
饿汉式:
EagerSingleton .java
public class EagerSingleton { private static EagerSingleton instance = new EagerSingleton(); private EagerSingleton(){ } public static EagerSingleton getInstance(){ return instance; }}
懒汉式:
LazySingleton .java
public class LazySingleton { private static LazySingleton instance = null; private LazySingleton (){ } public static synchronized LazySingleton getInstance (){ if(instance == null){ instance = new LazySingleton(); } return instance; }}
多线程的情况下,可以使用synchronized 修饰方法,另外网上一些人建议,如下写法
Singleton.java
public class Singleton { private static volatile Singleton instance = null; private Singleton(){ } public static Singleton getInstace(){ if(instance == null){ synchronized(Singleton.class){ if(instance == null){ instance = new Singleton(); } } } return instance; }}
这就是单例的示例代码。
阅读全文
0 0
- 设计模式学习笔记:单例模式
- 设计模式学习笔记-单例模式
- 设计模式学习笔记--单例模式
- 设计模式学习笔记-单例模式
- 设计模式学习笔记-单例模式
- 设计模式学习笔记--单例模式
- 设计模式--单例模式学习笔记
- 设计模式学习笔记----单例模式
- 【设计模式学习笔记】单例模式
- 学习设计模式笔记--单例模式
- 学习笔记07-设计模式之单例设计模式
- JavaSE学习笔记--单例设计模式
- 学习笔记--单例设计模式
- 设计模式之单例学习笔记
- HeadFirst 设计模式学习笔记5--单例模式
- HeadFirst 设计模式学习笔记5--单例模式
- C#设计模式学习笔记-单例模式
- java 设计模式 学习笔记(16) 单例模式
- 三星SDS与首尔市政府签署协议开发区块链平台
- leetcode 720. Longest Word in Dictionary
- php魔术方法
- spring注解方式配置mybatis数据源
- 怎样把可调DC-DC变身为数控稳压电源
- 学习设计模式笔记--单例模式
- 傅里叶变换 相位谱 幅度谱
- ContentProvider
- Java并发学习(九)-AtomicIntegerFieldUpdater字段原子更新类
- Oracle DataBase Appliance|Oracle数据库服务器存储一体机
- 离散制造业的数据采集之路
- Spring Cloud Eureka 集群高可用
- 解决RecyclerView.getChildAt(Position)崩溃
- 5.Python