黑马程序员技术交流社区

标题: 单例设计模式 [打印本页]

作者: 79481535    时间: 2015-10-4 15:14
标题: 单例设计模式
饿汉式:
  1. class Single
  2. {
  3.         private static final Single s = new Single();
  4.         private Single(){}
  5.         public static Single getInstance()
  6.         {
  7.                 Return s;
  8.         }
  9. }
复制代码


懒汉式
  1. Class Single
  2. {
  3.         private static Single s = null;
  4.         private Single(){}
  5.         public static Single getInstance()
  6.         {
  7.                 If(s = null)
  8.                         s = new Single();
  9.                 return s;
  10.         }
  11. }
复制代码

方便查看所用。
作者: becky_ny    时间: 2015-10-6 09:53
写的好精辟,大神吶
作者: yxtyxj    时间: 2015-10-6 14:06
哪种方式比较好?
作者: didixyy    时间: 2015-10-6 16:27
当我们需要在内存中创建一个唯一对象时就可以用单例。比如说同一个淘宝账户买,卖,加入购物车,等等所有操作。就可以使用单利设计模式。
“饿汉式”是在不管你用的用不上,一开始就建立这个单例对象。
“懒汉式”是在你真正用到的时候才去建这个单例对象。
“懒汉式”与“饿汉式”的区别,是在与建立单例对象的时间的不同。
一般开发的时候建议使用饿汉式,因为没有线程同步问题。
懒汉式存在同步问题,有可能在线程抢占资源时重复创建对象,
解决方法就是加上非空判断且加上同步代码块。




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