java单例模式
来源:互联网 发布:数控编程用什么格式 编辑:程序博客网 时间:2024/06/15 23:39
写法一(饿汉式):
public class Test{
private static Test test = new Test();
public Test(){ }
public static Test getInstance(){
return test;
}
}
写法二(懒汉式):
public class Test{
private static Test test = null;
public Test(){ }
public static Test getInstance(){
if(test == null){
test = new Test();
}
return test;
}
}
对于饿汉式,当类被加载的时候,已经创建好了一个静态对象,因此,是线程安全的,但缺点是在这个对象还没被使用的时候就已经被创建出来了。
对于懒汉式,缺点是非线程安全的。例如当第一个线程执行到判断语句if(test == null)时,第二个线程执行判断语句if(test == null),接着第一个线程执行语句test = new Test(),第二个线程也执行test = new Test(),在这种多线程环境下,可能会创建出两个对象。当然这种写法的优点是按需创建对象,只有对象被使用的时候才会被创建。
- java单例模式
- Java单例模式
- java单例模式
- java单例模式
- Java单例模式
- Java单例模式
- java单例模式
- Java单例模式
- java 单例模式
- java单例模式
- java单例模式
- java单例模式
- java 单例模式
- JAVA单例模式
- java单例模式 .
- Java 单例模式
- Java单例模式
- Java 单例模式
- 幂级数 收敛半径
- 计算组合数
- 协同过滤(斯坦福machine learning week 9)
- 分辨率,PPi,DPI,DPR,物理像素,逻辑像素
- Huffman树的实现
- java单例模式
- Java中的参数的传递实例小论
- 观察者模式在交易系统中的应用
- 如何查看电脑核数和线程数(网传方法有误)
- web应用打包成桌面可执行程序
- 装饰模式
- 指针数组与数组指针
- C#学习 @字符的作用
- 【Java】2.ArrayBlockingQueue使用与分析