C# 單例模式

單例模式理解:php

                       整個系統中有這麼一個Class類,這個類永遠只能只有一個實例的存在,稱之爲單例模式。html

原理:數據庫

                      這個類在構建類時已經在裏面實例化對象,將構造函數也改成私有的,因此沒法經過NEW來實例化新對象,函數

                      須要在類裏面有一個方法返回實例化的對象,因此用戶每次調用這個方法都返回最早的那個對象。工具

使用場景:htm

                      1.須要頻繁的進行建立和銷燬的對象;對象

                      2.建立對象時耗時過多或耗費資源過多,但又常常用到的對象;blog

                      3.工具類對象;資源

                      4.頻繁訪問數據庫或文件的對象。get

擴展閱讀:http://www.javashuo.com/article/p-avbufjwi-cu.html

代碼實例----餓汗式---靜態常量:

public class user {
        //實例化
        private static user obj=new user();//1
        //構造函數改成私有沒法再外界實例化
        private user() { }
        //屬性
        public string name { set; get; }
        //獲取對象方法,因此每次調用該方法都返回 1 處的對象,保證系統中只能有一個對象存在。
        public static user getUser()
        {
            return obj;
        }
    }

調用:

user u = user.getUser();
       u.name = "php";
user u2 = user.getUser();//到這裏 u2.name已經爲php
       u2.name = "php2";
            //意思是u和u2都指向Class裏面的那個實例化對象
相關文章
相關標籤/搜索