服务器之家

服务器之家 > 正文

java设计模式之单例模式的详解及优点

时间:2020-12-11 14:45     来源/作者:blue-wz

java设计模式单例模式

定义:如果一个类始终只能创建一个实例,那么这个类被称为单例类,这种设计模式被称为单例模式。

Spring框架里面可以将所有生成的bean对象都设置为单例模式,只需要在配置Bean实例时指定scope=“singleton”即可,或者不做配置默认即为单例模式。

我们可以创建一个小的Demo来演示单例模式的实现,只需要保证该类只能创建一个实例,我们可以用权限修饰符private修饰该类的构造器。

提供一个创建该类的接口,该接口只能用static修饰,类里面创建一个成员变量来保存生成的实例。

代码如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
package test;
 
class Anmail{
  
}
class singlelonDemo {
  private static singlelonDemo sd;
  private singlelonDemo(){
    
  }
  public static singlelonDemo single(){
    if(sd == null){
      sd = new singlelonDemo();
    }
    return sd;
  }
}
public class singleDemo{
  public static void main(String[] args){
    singlelonDemo sd1 = singlelonDemo.single();
    singlelonDemo sd2 = singlelonDemo.single();
    System.out.println(sd1==sd2);
  }
}

输出结果为true,表示生成的是一个实例。

单例模式是一种应用很广泛的设计模式,许多框架都有应用,下面要讲到的工厂模式里的工厂也只需要单个实例。

使用单例模式的两个优点:

1、减少创建java实例所带来的系统开销。

2、便于系统跟踪单个java实例的生命周期、实例状态等。

以上就是java单例模式的实例详解,如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

原文链接:http://www.cnblogs.com/blue-wz/p/7291146.html

相关文章

热门资讯

2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全 2019-12-26
Intellij idea2020永久破解,亲测可用!!!
Intellij idea2020永久破解,亲测可用!!! 2020-07-29
歪歪漫画vip账号共享2020_yy漫画免费账号密码共享
歪歪漫画vip账号共享2020_yy漫画免费账号密码共享 2020-04-07
电视剧《琉璃》全集在线观看 琉璃美人煞1-59集免费观看地址
电视剧《琉璃》全集在线观看 琉璃美人煞1-59集免费观看地址 2020-08-12
最新idea2020注册码永久激活(激活到2100年)
最新idea2020注册码永久激活(激活到2100年) 2020-07-29
返回顶部