zoukankan      html  css  js  c++  java
  • 单例模式

    一、单例模式之饿汉模式

    package com.singleton;
    
    public class SingletonHungry {
    
        private static SingletonHungry singletonHungry = new SingletonHungry();
        
        private SingletonHungry() {}
        
        public static SingletonHungry getInstance() {
            
            return singletonHungry;
        }
        
        
        
        
        
    }

    二、懒汉模式

    package com.singleton;
    
    public class SingletonLazy {
        
        private static SingletonLazy singletonLazy;
        
        private SingletonLazy() {}
        
        
        public synchronized static SingletonLazy getInstance() {
            
            if(singletonLazy == null) {
                
                singletonLazy = new SingletonLazy();
            }
            
            return singletonLazy;
            
        }
    
    }

    三、测试

    package com.singleton;
    
    public class Test {
        
        public static void main(String[] args) {
            
            SingletonHungry singletonHungry1 = SingletonHungry.getInstance();
            SingletonHungry singletonHungry2 = SingletonHungry.getInstance();
            
            System.out.println(singletonHungry1 == singletonHungry2);
            
            
            SingletonLazy singletonLazy1 = SingletonLazy.getInstance();
            SingletonLazy singletonLazy2 = SingletonLazy.getInstance();
            
            System.out.println(singletonLazy1 == singletonLazy2);
            
        }
    
    }

    四、结果

    true

    true

  • 相关阅读:
    阻塞赋值和非阻塞赋值
    组合逻辑和时序逻辑
    信道估计常用算法
    Verilog有限状态机FSM
    希尔伯特变换
    微信小程序取消分享的两种方式
    orm 常用字段
    drf获取请求过来时的request
    WeChat--API
    Django之admin源码浅析
  • 原文地址:https://www.cnblogs.com/honger/p/5961994.html
Copyright © 2011-2022 走看看