黑马程序员技术交流社区

标题: 饿汉式与懒汉式 [打印本页]

作者: lf027    时间: 2015-4-16 22:44
标题: 饿汉式与懒汉式
  1. 饿汉式:
  2. public class Student {
  3. private Student(){
  4.        
  5. }
  6. private static Student s=new Student();
  7. public static Student getStudent(){
  8.         return s;
  9.        
  10. }
  11. public void show(){
  12.         System.out.println("hello");
  13. }
  14. }
  15. 懒汉式:最重要注意的就是程式锁synchronized,其次加了一个if语句,其它的跟饿汉式一样
  16. public class Teacher {
  17. private Teacher(){
  18.        
  19. }
  20. private static Teacher t=null;
  21. public synchronized static Teacher getTeacher(){
  22.         if(t==null){
  23.                 t=new Teacher();
  24.         }
  25.         return t;
  26. }
  27. public void show(){
  28.         System.out.println("world");
  29. }
  30. }
复制代码
关于饿汉式和懒汉式最重的的得注意构造方法的private修饰,还有定义成员变量private加static修饰


作者: fanyun2009    时间: 2015-4-23 15:42
学习学习!
作者: Mr7952    时间: 2015-4-23 15:45
老毕说了  饿汉室开发多用
作者: 崔小可    时间: 2015-4-25 22:54
学习下哈
作者: 斷灬dian    时间: 2015-4-25 23:11
单例设计模式,来看看!!
作者: diy_coders    时间: 2015-4-26 16:34
学习了新知识
作者: 上善若水_Wx    时间: 2015-4-26 17:07
看的懂~~~~~~~
作者: li514620797    时间: 2015-5-3 11:19
来学习学习
作者: sunyue    时间: 2015-5-3 13:11
感谢楼主分享
作者: wk843620202    时间: 2015-5-3 17:18
懒汉式还有种写法:
public class Teacher {

private Teacher(){

}

private static Teacher t=null;

public static Teacher getTeacher(){

        if(t==null){
            synchronized(Teacher.this){
                    if(t == null)
                         t=new Teacher();
             }
        }
        return t;
}
public void show(){
        System.out.println("world");
}
}

作者: lingxia125    时间: 2015-8-7 21:22
哈哈,单例设计模式   
作者: 塞巴斯的小夏尔    时间: 2015-8-7 21:51
赞一个~~
作者: kemllor    时间: 2015-8-7 22:07
设计模式,还有哪些啊?
作者: icichacici    时间: 2015-8-7 23:14
方法锁是否更好啊
作者: 流水王朝    时间: 2015-8-7 23:18
学习学习~
作者: helloxiaoyu    时间: 2015-8-7 23:36
赞,学习学习
作者: 袁月明    时间: 2015-8-8 00:04
刘意说了,懒汗式面试多用
作者: fantianfei    时间: 2015-8-8 00:52
谢谢楼主分享
作者: wang949055945    时间: 2015-8-8 01:02
收藏,感觉单例模式再面试的时候会问到
作者: IT老鹰    时间: 2015-8-8 01:07
这个估计面试真的会问到




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