您可以通过实现Singleton模式来创建类单例.如今单身人士课是基本要求.
为什么JVM在运行时不自行处理Singleton对象的创建?
通过像"Singleton"这样的标记接口,并在运行时由JVM创建一次对象实例.无论如何,如果Class没有扩展任何其他类,Java编译器会添加"extends Object".类似的方法可以应用于Singleton案例.这将节省大量的时间和开发工作以及围绕Singleton模式的各种实现的讨论.
1)同步的getInstance()
2)getInstance()内部的同步块,而不是使整个方法同步
3)选项2使用singleInstance作为volatile成员
如果你需要在多个类中实现单例模式(不考虑将返回已传递的任何类的单例实例的SingletonPatternFactory类),这也将节省大量时间和重复工作.
让我们来看看创建单例所需的所有步骤:
readResolve和writeObject我遇到的大多数单身人士并不关心序列化,因此不需要第三步.这给你留下了两个非常非常简单的步骤.
public class Whatever extends WhateverElse {
public static final Whatever INSTANCE = new Whatever();
private Whatever() {}
}
Run Code Online (Sandbox Code Playgroud)
它甚至是延迟加载的,因为构造函数在你访问类之前不会运行,这只是获取它的单例实例.我不知道你对"很多"的定义是什么,只要时间和发展努力,但我不认为这是繁重的.
| 归档时间: |
|
| 查看次数: |
210 次 |
| 最近记录: |