单例模式在什么情况下用

 我来答
13832759343
推荐于2016-01-28 · TA获得超过5.6万个赞
知道大有可为答主
回答量:6600
采纳率:71%
帮助的人:2161万
展开全部
单例模式:在单例模式中,对活动的单例只有一个实例。对单例类的所有实例化得到的都是相同的一个实例。这个模式也提供一个全局的接口来访问这个类的实例。
public class Singleton {

//Fields
private static Singleton instance;
//Standard default Constructor
protected Singleton(){};
//Static method for creating the single instance of the Constructor
public static Singleton Instance(){
//initialize if not already done
if(instance == null)
instance = new Singleton();
//return the initialized instance of the Singleton Class
return instance;
}
}public class Client {

public static void main(String []args){
Singleton s1 = Singleton.Instance();
Singleton s2 = Singleton.Instance();
if(s1 == s2)
System.out.println("The same instance");
}
}单例模式的优点: 1。实例控制:单例模式防止其它对象对自己的实例化,确保所有的对象都访问一个实例。
2。伸缩性:因为由类自己来控制实例化进程,类就在改变实例化进程上有相应的伸缩性。
fox000002
推荐于2018-03-13 · TA获得超过3827个赞
知道大有可为答主
回答量:2356
采纳率:97%
帮助的人:1179万
展开全部
就是整个程序只需要一个实例的场景,比如连接池、线程池、factory之类
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式