600字范文,内容丰富有趣,生活中的好帮手!
600字范文 > java单例模式_java设计模式-单例模式

java单例模式_java设计模式-单例模式

时间:2022-08-27 04:53:22

相关推荐

java单例模式_java设计模式-单例模式

1.单例(Singleton)模式定义

指一个类只有一个实例,且该类能自行创建这个实例的一种模式。

2.单例模式特点

单例类只有一个实例对象;该单例对象必须由单例类自行创建;单例类对外提供一个访问该单例的全局访问点;

3.单例模式结构图

4.单例模式实现

第一种:懒汉式单例

类加载时没有生成单例,只有当第一次调用 getlnstance 方法时才去创建这个单例。

package

注意:

1.如果编写的是多线程程序,则不要删除上例代码中的关键字 volatile 和 synchronized,否则将存在线程非安全的问题。

2.如果不删除这两个关键字就能保证线程安全,但是每次访问时都要同步,会影响性能,且消耗更多的资源,这是懒汉式单例的缺点。

第二种:饿汉式单例

类一旦加载就创建一个单例,保证在调用 getInstance 方法之前单例已经存在了。

package

饿汉式单例在类创建的同时就已经创建好一个静态的对象供系统使用,以后不再改变,所以是线程安全的。

5.单例模式的应用场景

在应用场景中,某类只要求生成一个对象。当对象需要被共享的场合。由于单例模式只允许创建一个对象,共享该对象可以节省内存,并加快对象访问速度。如数据库的连接池。当某类需要频繁实例化,而创建的对象又频繁被销毁的时候,如多线程的线程池。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。