91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

java 中設計模式之單例

發布時間:2020-09-20 12:39:46 來源:腳本之家 閱讀:124 作者:lqh 欄目:編程語言

java 中設計模式之單例

設計模式思想

什么是設計模式:我作為初學者,今天第一次正式學習設計模式,我覺得對與理解什么是設計模式很重要,那么什么是設計模式呢?

設計模式:解決問題的一種行之有效的思想。

設計模式:用于解決特定環境下、重復出現的特定問題的解決方案

我的理解是前人在軟件設計的時候碰到了一類問題,他們總結出了一套行之有效,并且經過驗證的解決方案。

設計模式的優點:

1、設計模式都是一些相對優秀的解決方案,很多問題都是典型的、有代表性的問題,學習設計模式,我們就不用自己從頭來解決這些問題,相當于在巨人的肩膀上,復用這些方案即可。

2、設計模式已經成為專業人士的常用詞匯,不懂不利于交流。

3、能讓你設計的系統更加專業,讓系統有更好的架構。

設計模式1~~單例

單利設計模式是用來解決在內存里面只能存在一個的某個類 的問題。 這個比較抽象,打個比方說 你要做一個打麻將游戲,丟骰子,第一個人丟了顯示的幾個數字,后面的人也要用。骰子這個類在內存里只允許存在一份。此類問題就需要用單例設計方案解決。

第一種: 餓漢式 先自己new 出來。速度快,單是占用內存多。

public class Single {
  private final static Single s = new Single();

  //類只能有一個故私有化構造方法,不讓外面new對象
  private Single(){
  }
//工廠方法的命名規范
 getinstance
//當外面沒辦法new對象時候,我們對像給外面調要自己來new
// 當沒發new 對象時候,必須是靜態方法,給外界使用。
    public static Single getInstance(){
    return s;
  }
}

第二種: 懶漢式

//懶漢式
public class Single2 {
  // 先步開內存,需要用的時候才new 
  private static Single2 s=null;
  private Single2(){
  }
  // synchronized 用來防多線程時。第一個和第二個線程搶資源都會進入s==null,
時new 兩次。
  public synchronized static Single2 getInstance(){
    if(s==null){
      s = new Single2();
    }
    return s;
  }
}

synchronized 看成鎖是屬于getInstance方法的。當方法屬于static時,鎖屬于類模板的,當方法是對象調用時鎖就屬于對象的。

 以上就是對java中單例模式的詳解,如有疑問請留言或者到本站社區交流討論,感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

循化| 高唐县| 太仆寺旗| 南雄市| 樟树市| 旌德县| 鄂伦春自治旗| 邵东县| 阜阳市| 佛坪县| 获嘉县| 久治县| 扎鲁特旗| 双牌县| 内江市| 阳原县| 常宁市| 博湖县| 准格尔旗| 周口市| 什邡市| 清水县| 太白县| 阜康市| 大冶市| 五原县| 繁峙县| 乌鲁木齐县| 太仆寺旗| 石泉县| 保康县| 嵊泗县| 甘孜| 丽江市| 贵溪市| 平定县| 开江县| 曲周县| 金坛市| 会同县| 仁布县|