zoukankan      html  css  js  c++  java
  • 饿汉单例模式 and 懒汉单例模式

    饿汉单例模式:主要就是利用static关键字,在类加载的时候生成实例,调用效率高

                             但是如果一直没有调用getInstance方法的话,就会造成资源浪费

    具体实现如下:

    class Single{
        
        private static Single single = new Single();
    
        private Single() {
            
        }
        
        public static Single getInstance() {
            return single;
        } 
        
    }

    懒汉单例模式:主要就是在调用的的时候才产生实例,那么就要考虑多线程并发访问的情况,需要将getInstance方法整成同步的

              这种模式调用效率不高,但是可以做到延时加载

    具体代码实现如下:

    class Single{
        
        private static Single single;
    
        private Single() {
            
        }
        
        public static synchronized Single getInstance() {
            if(single == null) {
                single = new Single();
            }
            return single;
        } 
        
    }
  • 相关阅读:
    问题 A: 走出迷宫(BFS)
    问题 A: 工作团队(并查集删点操作)
    刷题-力扣-989
    刷题-力扣-12
    刷题-力扣-628
    刷题-力扣-11
    刷题-力扣-1018
    刷题-力扣-9
    刷题-力扣-7
    刷题-力扣-6
  • 原文地址:https://www.cnblogs.com/xtuxiongda/p/11020526.html
Copyright © 2011-2022 走看看