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

    懒汉式
    public class Singleton{
    
        //@单例类只能有一个实例
        //@单例类必须自行创建这个实例
        //@单例类必须给所有对象提供这一个实例//必须向整个系统提供这个这个实例
        private static Singleton uniqueInstance = null;
        private Singleton(){
            System.out.println("懒汉式单例---");
            
        }
        public static Singleton getInstance(){
            if(uniqueInstance == null){
                uniqueInstance = new Singleton();
            }
            return uniqueInstance;
        }
    }
    懒汉式(同步否则有危险)
    public class Singleton{
    
        //@单例类只能有一个实例
        //@单例类必须自行创建这个实例
        //@单例类必须给所有对象提供这一个实例//必须向整个系统提供这个这个实例
        private static Singleton uniqueInstance = null;
        private Singleton(){
            System.out.println("懒汉式单例---");
            
        }
        public static synchronized Singleton getInstance(){
            if(uniqueInstance == null){
                uniqueInstance = new Singleton();
            }
            return uniqueInstance;
        }
    }
    饿汉式
    public class Singleton {
    
        private Singleton() {
            System.out.println("饿汉式单例---");
        }
        
        private static Singleton instance = new Singleton();
        
        public  static Singleton getInstance(){
            return instance;
        }
    
    }
    验证:
                    Singleton st1 = Singleton.getInstance();
            Singleton st2 = Singleton.getInstance();
            System.out.println(st1==st2);
    结果:true
  • 相关阅读:
    java8接口新特性
    美团后台开发面试经验
    美团后台开发面试经验
    HashMap源码阅读之get/put/resize方法
    腾讯系统测试面试经验
    携程实习生春招面经-后台开发
    Python-if else流程判断
    python中信息拼接打印
    数据库查询-关于exists的使用
    关于网站防护的建议
  • 原文地址:https://www.cnblogs.com/ysloong/p/6246902.html
Copyright © 2011-2022 走看看