单例模式--懒汉,饿汉

单例模式

  定义:一个类有且只有一个实例,并且可以自行实例化向整个系统提供

  实现:  1.只提供私有的构造方法

       2.在该类中创建该类型的私有静态对象

       3.提供一个静态的公有方法用于创建,获取私有对象

 

  饿汉式:创建对象实例的时候直接初始化                    

      假设类名为Single1                                  

      代码实现:                               

            public class Single1{                   

              //创建私有的构造方法                    

               private  Single1(){ }  

              //创建该类型的私有静态对象,并直接初始化

               private  static  Single1  sg=new Single1(); 

              //创建静态的公有方法,获取私有对象 

                public static Single1  getSg( ){

                  return sg();  

              }

          }

     

*******************************************************************************************

  懒汉式:在公有方法体内实现对对象的实例化

      假设类名为Single2

      代码实现:

          public class Single2{

            //创建私有的构造方法

            private Single2(){ }

            //创建该类的私有静态实例

            private static Single2 sg2=null;

            //创建公有的方法实现对象的实例化

            public static Single2 getSg2( ){

              //判断对象是否为空,若为空实例化对象

              if(sg2==null){

                sg2=new Single2();

                return sg2;

              }

          }

posted @ 2018-04-10 16:24  Yanleee  阅读(146)  评论(0编辑  收藏  举报