黑马程序员——单例设计模式

来源:互联网 发布:java学生信息管理系统 编辑:程序博客网 时间:2024/06/06 03:47

单例设计模式的意义:

      单例模式可以控制单例数量;可以进行有意义的派生;对实例的创建有更自由的控制。

 

单例模式有以下特点:


     1、单例类只能有一个实例。
     2、单例类必须自己创建自己的唯一实例。
  3、单例类必须给所有其他对象提供这一实例。

 

单例设计模式的两种方式:

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

 

代码事例:

 

懒汉式:开始定义一个对象赋值null,在后来时候才赋值,所以会出现线程安全问题。

 

代码事例:

 

 

饿汉式与懒汉式区别:

          饿汉式的是安全的,而懒汉式线程不安全。 

       饿汉式在类创建的同时就实例化一个静态对象出来,不管之后会不会使用这个单例,会占据一定的内存,相应的在调用时速度也会更快,

        而懒汉式会延迟加载,在第一次使用该单例的时候才会实例化对象出来,第一次掉用时要初始化,如果要做的工作比较多,性能上会有些延迟,之后就和饿汉式一样了。

 

 

 

0 0
原创粉丝点击