package org.test;
public class Singleton {
public static void main(String[] args) {
// TODO Auto-generated method stub
Singleton singleton=Singleton.getInstance();
System.out.println(singleton);
}
//延迟初始化占位类替代双重检验加锁以达到延迟初始化和线程安全的目的。
private static class SingletonHolder{
public static Singleton singleton=new Singleton();
}
public static Singleton getInstance(){
return SingletonHolder.singleton;
}
private String name="test";
private Singleton(){
}
public String toString(){
return name;
}
}
本文介绍了一种使用静态内部类实现Java单例模式的方法。该方法不仅实现了延迟加载,还确保了线程安全性。通过这种方式,可以有效地减少内存消耗,并在多线程环境下避免实例创建的竞争条件。

被折叠的 条评论
为什么被折叠?



