黑马程序员技术交流社区

标题: 懒汉式的优缺点 [打印本页]

作者: 郝晓东    时间: 2015-3-21 20:41
标题: 懒汉式的优缺点
以及它与饿汉式的用法范围的区别
作者: 齐浩    时间: 2015-3-21 21:55
懒汉
public class Student{
private Student();//私有构造
private static Student student = null;
   public static  Student newStudent(){
             if(student == null) {      
                student = new Student();  //懒汉式做法
             }
             return student;
          }

饿汉
public class Student    {
private Student();//私有构造
private static Student student = new Student(); //建立对象
   public static   Student newStudent(){
                return student;  //直接返回单例对象
          }
厂模式简单的说就是你要我就给,懒汉和饿汉的本质区别,就是实例化对象的时机,即是什么时候将对象创建起来。
所有的方法和属性已经全在内存里了,但是没有调用的话,cup是不会去计算和执行的,只有你调用哪个才去计算和执行哪个属性和方法的代码。
不过,类的静态代码块除外
如 static {
              ........
                }
这种情况之下,类一加载,该代码块就会被执行。
作者: 夜班心桥    时间: 2015-3-21 23:07
懒汉式,在你获取该对象之前,就已经创建好了。而饿汗式,采用了同步机制,什么时候,获取该类的对象,什么时候创建出来。但由于加锁机制,所以效率可能不高。我们实际开发中,一般采用懒汉式,而饿汗式常作为面试题。
作者: ccl|r    时间: 2015-3-21 23:31
学习学习
作者: 卟離不棄    时间: 2015-3-21 23:39
我不是记得饿汉式没有线程安全,开发用的多是饿汉式吧!!!!
作者: 小川行    时间: 2015-3-22 00:18
饿汉式能保证线程安全




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2