• 设计模式单例模式


    // 饿汉模式
    public class Singleton{
      // 私有化默认构造函数,防止独自创建对象
      private Singleton(){
        
      }
      // 饿汉饿极了,上来直接就开'吃'了,虚拟机启动就创建实例对象
      private static Singleton instance = new Singleton();
      // 返回实例
      public static Singleton getInstance(){
        return instance;
      }
    }
    // 懒汉模式(多线程会出问题)
    public class Singleton{
      // 私有化默认构造函数,防止独自创建对象
      private Singleton(){
        
      }
      // 懒汉比较懒,不创建实例对象,用的时候再创建
      private static Singleton instance;
      
      public static Singleton getInstance(){
        if(instance == null){
           instance = new Singleton();
        }
        return instance;
    }
    // 懒汉双检锁,避免多线程导致并发问题
    pulblic class Singleton{
        private Singleton(){};
    
        private volatile static Singleton instance;
    
        public static Singleton getInstance(){
            if(instance == null){
                Synchronized(Singleton.class){
                      if(instance == null){
                          instance = new Singleton();   
                      }  
                }
            }
            return instance;  
        }          
    }
  • 相关阅读:
    括号匹配性检测C语言实现
    预处理命令--宏定义
    *运算和&运算
    retain, copy, assign以及autorelease
    自定义 一个单例
    多米音乐笔试题
    UI-自定义视图、视图控制器
    Foundation框架—集合
    Foundation框架—字符串
    Foundation框架—结构体
  • 原文地址:https://www.cnblogs.com/wsZzz1997/p/14581683.html
Copyright © 2020-2023  润新知