【軟考學習】設計模式——單例模式
阿新 • • 發佈:2019-01-05
【背景】
設計模式是非常重要的一塊知識,每個設計模式都值得深入瞭解和學習。
【內容】
單例設計模式總結:一、定義:保證一個類僅有一個例項,並提供一個訪問它的全域性觀點。
二、UML結構圖:
三、程式碼實現:
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace 單例模式_基本程式碼 { class Program { static void Main(string[] args) { Singleton s1 = Singleton.GetInstance(); Singleton s2 = Singleton.GetInstance(); if (s1==s2) { Console.WriteLine("兩個物件是相同的例項"); } Console.Read(); } class Singleton { private static Singleton instance; private static readonly object syncRoot = new object(); private Singleton() { } public static Singleton GetInstance() { //雙重鎖定 if (instance ==null) { //多執行緒時的單例 lock (syncRoot) { if (instance == null) { instance = new Singleton(); } } } return instance; ////單執行緒的單例模式 //if (instance==null ) //{ // instance = new Singleton(); //} //return instance; } } } }