相关疑难解决方法(0)

什么时候我们应该在Java中使用Singleton类?

根据我的想法,当我们在整个应用程序中共享相同的对象状态时,我们应该将类创建为Singleton.在这种情况下,我们希望用户每次都限制创建新实例,以便它们不能维持多个状态.同意.但是通过将实例变量声明为静态可以实现相同的行为.对我来说,无论是它还是类cacheobjectcontainer,它看起来也会起到同样的作用.loggerClassloader

请帮助我理解上面的概念静态实例变量无法解决的目的和类需要声明Singleton?

编辑部分

好的,让我更清晰一些.单例类的目的是在jvm中只保留一个单例类的实例.同意.但我试图想出为什么我们只想保留一个实例的原因.原因有两个:

1)创建对象可能很昂贵.所以我们只想保留一个实例.在这种情况下同意将实例变量声明为静态并不能解决任何问题.

2)我们希望跨应用程序共享相同的对象状态.我认为这是将类声明为单例的主要目的.但它可以通过将实例变量声明为静态来实现.

但看起来像1是将任何类声明为静态而不是原因2的主要原因,因为它也可以用静态变量实现.

它是否正确?

java singleton

6
推荐指数
1
解决办法
2万
查看次数

标签 统计

java ×1

singleton ×1