A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© God’s favoure 中级黑马   /  2014-10-26 13:52  /  713 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

什么是设计模式呢?就是解决某一类问题最行之有效的方法.
而单例模式的作用在于解决一个类在内存只存在一个对象.想要保证对象唯一.
说真的,单例模式我刚刚接触的时候,也是非常的不理解,特别是字面上的意思,现在我简单打一个比方,就可以清楚的显示出单例模式的作用了,有很多时候必须要创建一个对象,并且不能创建多个,用单例就为了防止创建多个对象。比方说一个学校只有一个校长,不能有两个,有两个也出问题了,像校长这个类就必须做成单例的。
单例模式的三个思维步骤:
1.为了避免其他车公帑过多建立该类对象,先控制禁止其他程序建立该类对象.
2.还为了让其他程序可以访问到该类对象,只能在本类中,自定义一个对象.
3.为了方便其他程序对自定义对象的访问,可以对外提供一些访问方式.
而单例模式也分为饿汉式单例和懒汉式单例:
饿汉式:在类被加载的时候,唯一实例已经被创建。这个设计模式在Java中容易实现,在别的语言中难以实现。
public class Single {
        private static Single s = new single();
        private single(){}
        public static Single getInstance(){
                return s;
        }
}
懒汉式:方法被调用是,才初始化(是有点懒了),也可以叫做方法延时加载.
public class Single {
        private static Single s =null;
        private single(){}
        public static Single getInstance(){
                if(s ==null){
                        s=new Single();
                return s;
                }
        }
}
总结一下特点:
饿汉式的特点是Single类一进内存,就已经建立了对象,这个最常用.
懒汉式的特点是Single进内存,对象还没有存在,只有调用了getInstance方法时候,才建立对象.

评分

参与人数 1黑马币 +1 收起 理由
杨佳名 + 1

查看全部评分

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马