亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

java單例模式 ....

標簽:
Java

java单例模式可以保证对象的唯一性

1. //懒汉式单例类.在第一次调用的时候实例化自己   
2. public class Singleton {  
3.     private Singleton() {}  //私有的构造函数
4.     private static Singleton single=null;  
5.     //静态工厂方法   
6.     public static Singleton getInstance() {  
7.          if (single == null) {    
8.              single = new Singleton();  
9.          }    
10.         return single;  
11.     }  
12. }  
13. 懒汉式单例的实现没有考虑线程安全问题,它是线程不安全的,并发环境下很可能出现多个Singleton实例
14. 在getInstance方法上加同步
15. 

[java] view plain copy

    1. public static synchronized Singleton getInstance() {  
    2.          if (single == null) {    
    3.              single = new Singleton();  
    4.          }    
    5.         return single;  
    6. }  
16. 

17. 2、双重检查锁定
18. 

[java] view plain copy

    1. public static Singleton getInstance() {  
    2.         if (singleton == null) {    
    3.             synchronized (Singleton.class) {    
    4.                if (singleton == null) {    
    5.                   singleton = new Singleton();   
    6.                }    
    7.             }    
    8.         }    
    9.         return singleton;   
    10.     }  
19. 3、静态内部类
20. 

[java] view plain copy

    1. public class Singleton {    
    2.     private static class LazyHolder {    
    3.        private static final Singleton INSTANCE = new Singleton();    
    4.     }    
    5.     private Singleton (){}    
    6.     public static final Singleton getInstance() {    
    7.        return LazyHolder.INSTANCE;    
    8.     }    
    9. }    

1. //饿汉式单例类.在类初始化时,已经自行实例化   
2. public class Singleton1 {  
3.     private Singleton1() {}  
4.     private static final Singleton1 single = new Singleton1();  //定义成常量...
5.     //静态工厂方法   
6.     public static Singleton1 getInstance() {  
7.         return single;  
8.     }  
9. }
點擊查看更多內容
TA 點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優質文章

正在加載中
  • 推薦
  • 評論
  • 收藏
  • 共同學習,寫下你的評論
感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
今天注冊有機會得

100積分直接送

付費專欄免費學

大額優惠券免費領

立即參與 放棄機會
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

舉報

0/150
提交
取消