圖文結(jié)合講解Java單例模式-創(chuàng)新互聯(lián)

PS:首先我們要先知道什么是單例,為什么要用單例,用的好處是什么等問題來看。

站在用戶的角度思考問題,與客戶深入溝通,找到呼和浩特網(wǎng)站設(shè)計與呼和浩特網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗,讓設(shè)計與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個性化、用戶體驗好的作品,建站類型包括:成都做網(wǎng)站、成都網(wǎng)站制作、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、域名申請、虛擬主機(jī)、企業(yè)郵箱。業(yè)務(wù)覆蓋呼和浩特地區(qū)。

1:java中單例模式是一種常見的設(shè)計模式,單例模式的寫法有好幾種,這里主要介紹兩種:懶漢式單例、餓漢式單例


單例模式有以下特點:


  1、單例類只能有一個實例。
  2、單例類必須自己創(chuàng)建自己的唯一實例。
  3、單例類必須給所有其他對象提供這一實例。


  單例模式確保某個類只有一個實例,而且自行實例化并向整個系統(tǒng)提供這個實例。在計算機(jī)系統(tǒng)中,線程池、緩存、日志對象、對話框、打印機(jī)、顯卡的驅(qū)動程序?qū)ο蟪1辉O(shè)計成單例。這些應(yīng)用都或多或少具有資源管理器的功能。每臺計算機(jī)可以有若干個打印機(jī),但只能有一個Printer Spooler,以避免兩個打印作業(yè)同時輸出到打印機(jī)中。每臺計算機(jī)可以有若干通信端口,系統(tǒng)應(yīng)當(dāng)集中管理這些通信端口,以避免一個通信端口同時被兩個請求同時調(diào)用。總之,選擇單例模式就是為了避免不一致狀態(tài),避免政出多頭。


2:懶漢式


先把單例類寫出來


public class SingletonTest { 
  //懶漢式單例類.在第一次調(diào)用的時候?qū)嵗约? 
  private SingletonTest() {} 
    private static SingletonTest single=null; 
    //靜態(tài)工廠方法  
    public static SingletonTest getInstance() { 
       if (single == null) {  
         single = new SingletonTest(); 
         System.out.println("創(chuàng)建一次"); 
       }  
      return single; 
    } 
     
    public void show(){ 
      System.out.println("我是show"); 
    } 
 
} 

本文標(biāo)題:圖文結(jié)合講解Java單例模式-創(chuàng)新互聯(lián)
網(wǎng)站URL:http://muchs.cn/article18/dphggp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供微信公眾號域名注冊、虛擬主機(jī)、品牌網(wǎng)站設(shè)計、手機(jī)網(wǎng)站建設(shè)、微信小程序

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

營銷型網(wǎng)站建設(shè)