单例模式

来源:互联网 发布:windows iso怎么下载 编辑:程序博客网 时间:2024/06/07 06:06
package com.demo;

public class Demo01 {
    public static void main(String[] args) {
        /*
         * java设计模式:在处理某些情况下一种约定俗成,并且行之有效的方法
         *  23种设计模式  单例设计模式 装饰者设计模式  
         *   
         *   单例设计模式:主要是为了解决在计算机内存中某个类只存在一个对象的这种情况
         */
        
         //Single s1 = new Single();
         Single2 s1 = Single2.getInstances();
         s1.setAge(20);
        
        // Single s2 = new Single();
         Single2 s2 = Single2.getInstances();
         s2.setAge(20);
        
         if(s1==s2){
             System.out.println("是同一个对象");
         }else{
             System.out.println("不是同一个对象");
         }
        
    }
    
}
    //饿汉式单例模式
    class Single {
        
        private int age;

        public int getAge() {
            return age;
        }

        public void setAge(int age) {
            this.age = age;
        }

        //1.将构造函数设为私有化    避免在外部调用实例化对象
        private  Single(int age) {
            super();
            
        }
        
        public Single() {
            // TODO Auto-generated constructor stub
        }

        //2.在本类里面提供一个对象
        private  static Single s = new Single();
        
        //3.对外提供公共的方法
        public static Single getInstances(){
            return s;
        }       
}
    
    //懒汉式单例模式
  class Single2{
       private int age;

            public int getAge() {
                return age;
            }

            public void setAge(int age) {
                this.age = age;
            }
            
            //1.将构造函数设为私有化    避免在外部调用实例化对象
            private  Single2(int age) {
                super();
                
            }
            
            public Single2() {
                // TODO Auto-generated constructor stub
            }

            //2在本类中提供一个对象
            private static Single2 s =null;
            
            //3.对外提供公共的方法  synchronized线程锁
            public synchronized static Single2 getInstances(){
                if(s == null){
                    s= new Single2();
                }
                return s;
            }  
  }
0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 驾照过期3年了怎么办 如果学车过期了怎么办 行驶证过期了3年怎么办 行驶证过期没审怎么办 行驶证过期两年怎么办 驾驶证过期7年了怎么办 换驾照过一个月怎么办? 行驶证正本掉了怎么办 车的行驶证丢了怎么办 三星s6 屏幕坏了怎么办 手机摔成黑屏了怎么办 三星屏幕漏液了怎么办 三星s8屏幕漏液怎么办 屏幕紫色漏液了怎么办 华为手机屏碎了怎么办 小米2s按键失灵怎么办 魅蓝屏幕摔花了怎么办 小米手机屏碎了怎么办 厦门医保卡坏了怎么办 医保卡丢了北京怎么办 重庆社保卡丢了怎么办 沈阳医保卡丢了怎么办 小孩医保卡丢了怎么办 少儿医保卡丢了怎么办 孩子医保卡丢了怎么办 医保卡存折丢了怎么办 济宁医保卡丢了怎么办 大连医保卡丢了怎么办 职工医保卡丢了怎么办 太原医保卡丢了怎么办 南京医保卡丢了怎么办 苏州医保卡丢了怎么办 我的医保卡丢了怎么办 医保卡丢了怎么办出院 住院医保卡丢了怎么办 社会医保卡丢了怎么办 医保本丢了,住院怎么办 临时医保卡丢了怎么办 没带医保卡看病怎么办 居民医保卡掉了怎么办 福建医保卡坏了怎么办