亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

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

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

java單例設計模式的概念

發布時間:2021-09-14 08:47:43 來源:億速云 閱讀:118 作者:chen 欄目:編程語言

這篇文章主要講解了“java單例設計模式的概念”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“java單例設計模式的概念”吧!

單例設計模式概述:
      單例模式就是要確保類在內存中只有一個對象,該實例必須自動創建,并且對外提供
單例模式有以下特點:
  1、單例類只能有一個實例。
  2、單例類必須自己自己創建自己的唯一實例。
  3、單例類必須給所有其他對象提供這一實例。
單例模式分三種:
       懶漢式單例
       餓漢式單例
       登記式單例
         單例模式確保某個類只有一個實例,而且自行實例化并向整個系統提供這個實例。在計算機系統中,線程池、緩存、日志對象、對話框、打印機、顯卡驅動程序對象常被設計成單例。這些應用都或多或少具有資源管理器的功能。每臺計算機可以有若干個打印機,但只能有一個Printer Spooler,以避免兩個打印作業同時輸出到打印機中。每臺計算機可以有若干通信端口,系統應當集中管理這些通信端口,以避免一個通信端口同時被兩個請求同時調用。
餓漢式單例代碼如下:

  1. public class Student {

  2.         //構造私有

  3.         private Student(){

  4.         }

  5.         // 自己造一個

  6.         // 靜態方法只能訪問靜態成員變量,加靜態

  7.         // 為了不讓外界直接訪問修改這個值,加private

  8.         private static Student s = new Student();

  9.         //提供公共的訪問模式

  10.         //為了保證外界能夠直接使用該方法,加靜態

  11.         public static Student getStudent(){

  12.                 return s;

  13.         }

  14. }

餓漢式在類創建的同時就已經創建好一個靜態的對象供系統使用,以后不再改變,所以天生是線程安全的。
懶漢式代碼如下:

  1. public class Teacher {

  2.         private Teacher() {

  3.         }

  4.         private static Teacher t = null;

  5.         public synchronized static Teacher getTeacher() {

  6.                 // t1,t2,t3

  7.                 if (t == null) {

  8.                         //t1,t2,t3

  9.                         t = new Teacher();

  10.                 }

  11.                 return t;

  12.         }

  13. }

懶漢式單例是線程不安全的,需要在getTeacher()方法上加上synchronized來保證線程的安全

感謝各位的閱讀,以上就是“java單例設計模式的概念”的內容了,經過本文的學習后,相信大家對java單例設計模式的概念這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!

向AI問一下細節

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

AI

黎城县| 海伦市| 林甸县| 故城县| 兴国县| 项城市| 龙海市| 松阳县| 乌什县| 旺苍县| 十堰市| 平泉县| 汉源县| 博爱县| 淮北市| 康乐县| 天长市| 嘉义市| 铜山县| 元阳县| 军事| 泰顺县| 麻栗坡县| 灵丘县| 增城市| 天津市| 三河市| 灵石县| 兰溪市| 崇明县| 樟树市| 呼玛县| 湘西| 鹤庆县| 广宁县| 大关县| 桂平市| 娄底市| 塔河县| 天柱县| 南城县|