真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Java怎么實(shí)現(xiàn)單例設(shè)計模式

本篇內(nèi)容主要講解“Java怎么實(shí)現(xiàn)單例設(shè)計模式”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實(shí)用性強(qiáng)。下面就讓小編來帶大家學(xué)習(xí)“Java怎么實(shí)現(xiàn)單例設(shè)計模式”吧!

美蘭ssl適用于網(wǎng)站、小程序/APP、API接口等需要進(jìn)行數(shù)據(jù)傳輸應(yīng)用場景,ssl證書未來市場廣闊!成為成都創(chuàng)新互聯(lián)的ssl證書銷售渠道,可以享受市場價格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:028-86922220(備注:SSL證書合作)期待與您的合作!

單例模式的幾種實(shí)現(xiàn)方式:

一:餓漢式單例

方式一:枚舉方式獲得單例對象

方式二:靜態(tài)屬性獲得單例對象

方式三:靜態(tài)方法獲得單例對象

二:懶漢式單例

方式一:靜態(tài)方法獲得單例對象(線程安全)

方式二:內(nèi)部類方式去獲取單例對象

示例:

惡漢式:方式一

enum Singleton{
  INSTANCE;//單例
}

惡漢式:方式二

class Singleton{
  public static final Singleton INSTANCE = new Singleton();//單例
  private Singleton(){}
}

惡漢式:方式三

class Singleton{
  private static final Singleton INSTANCE = new Singleton();//單例
  private Singleton(){}
  public static Singleton getInstance(){
    return INSTANCE;
  }
}

懶漢式:方式一

class Singleton{
	  private static Singleton instance;
	  private Singleton(){
	}
	  public static Singleton getInstance(){
		    //存在線程安全問題(多線程的時候,不一定是單例)
		    
		/*if(null == instance){
      instance = new Singleton();
    }
    return instance;*/
		    if(null == instance){
			//提升代碼效率,避免每一次都去走同步代碼塊
			      synchronized(Singleton.class){
				        if(null == instance){
					          instance = new Singleton();
				}
				        return instance;
				        
			}
			 
		}
		      return instance;
		   
	}
}
}

懶漢式:方式二

class Singleton{
  private Singleton(){}
  private static class Inner{
    public static final Singleton INSTANCE = new Singleton();
  }
  public static Singleton getInstance(){
    return Inner.INSTANCE;
  }
}

到此,相信大家對“Java怎么實(shí)現(xiàn)單例設(shè)計模式”有了更深的了解,不妨來實(shí)際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!


分享名稱:Java怎么實(shí)現(xiàn)單例設(shè)計模式
本文鏈接:http://weahome.cn/article/jcopgc.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部