最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
JAVA 静态的单例的实例详解
时间:2022-06-29 01:25:26 编辑:袖梨 来源:一聚教程网
JAVA 静态的单例的实例详解
实现代码:
public class Printer { private Printer(){ } public static Printer newInstance(){ return CreatePrinter.mPrinter; } private static class CreatePrinter{ private final static Printer mPrinter = new Printer(); }} |
因为静态的单例对象没有作为类的成员变量直接实例化,因此在Printer类加载时并没有实例化mPrinter。第一次调用newInstance() 的时候加载内部类CreatePrinter ,该内部类定义了一个static 类型的变量mPrinter,此时会首先初始化这个变量,由JVM 来保证其线程安全性,确保该成员变量只被实例化一次。
可见,通过使用这个方法,不仅实现了延迟加载,又可以保证线程安全,不影响系统性能。
相关文章
- Ruby的面向对象方式编程学习杂记 09-23
- 解析proxy代理模式在Ruby设计模式开发中的运用 09-23
- 深入剖析Ruby设计模式编程中对命令模式的相关使用 09-23
- 详解组合模式的结构及其在Ruby设计模式编程中的运用 09-23
- 设计模式中的模板方法模式在Ruby中的应用实例两则 09-23
- 借助RubyGnome2库进行GTK下的Ruby GUI编程的基本方法 09-23