黑马程序员技术交流社区

标题: 单例模式怎样使用 [打印本页]

作者: 王振2014    时间: 2014-6-21 15:24
标题: 单例模式怎样使用
单例模式怎样调用它内部的方法啊,拿到就像静态一样
作者: 黄宝宝    时间: 2014-6-21 18:41
他提供 了一个接口,让你可以得到该对像的引用,得到引用了,你想怎么样就怎么样啦。
作者: lindegen    时间: 2014-6-21 18:49
你想问什么呀帅哥,单例模式的方法是静态的,可以通过类.方法调用创建对象,哈哈 好像是这样
作者: 陈云阳    时间: 2014-6-21 18:56
  1. class danLi
  2. {
  3.         private danLi(){}
  4.         private static danLi s = new danLi();
  5.        
  6.         public static danLi getDanLi()
  7.         {
  8.                 return s;
  9.         }
  10. }

  11. class Test
  12. {
  13.         public static void main(String[] args)
  14.         {
  15.                 danLi.getDanLi();
  16.         }
  17. }
复制代码
单例模式的思路就是三步,楼主记牢了
1.将构造函数私有化。        保证对象的唯一性
  2.在类中创建一个本类对象。
     这一句也要私有
  3.提供一个方法可以获取到该类
为什么要弄个方法获取而不直接调用对象?因为我们要保证代码的封装性


作者: 姿_`态    时间: 2014-6-21 19:12
单例设计模式内部的方法,必须都是静态的,要不然没有办法调用,跟没创建一样。而且单利不能被继承,因为构造函数是私有的。单利没什么好处,就只是保证对象唯一而已。
作者: yuZhe_toString    时间: 2014-6-21 21:21
首先你要明白为什么要用单例,目的是让该类在内存中永远只有一个对象,所以他要有个私有的构造函数,便于自己实例化自己。所以说里面的方法不一定都是静态的,但是共外部访问的都是静态的。
作者: 王振2014    时间: 2014-6-22 14:00
谢谢楼上几位,我明白了
作者: liletian2104    时间: 2014-6-22 14:05
单例模式中将对象私有化,不允许外界直接实例化该类,但是提供了可以调用的静态方法,调用该静态方法,就能返回该类的对象,对象有了以后,就可以使用里面的方法了




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