首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> 關於C語言

C# 靜態建構函數初始化靜態成員(一)

     編輯:關於C語言

靜態成員初始化兩大方式

  • 欄位初始化語句:簡單、直觀,但例外處理困難
  • 靜態建構函數:可包含複雜邏輯、支援 try-catch、執行緒安全

對比表

面向欄位初始化靜態建構函數
簡便性最簡便較簡便
安全性較安全最安全
例外處理極難容易

選用建議

  1. 簡單值型別靜態欄位 → 使用欄位初始化語句
  2. 複雜初始化邏輯、可能拋出例外 → 使用靜態建構函數

靜態建構函數特性

  • 無參數、無存取修飾詞、每個類別僅一個
  • 由 CLR 自動在第一次存取類別前調用
  • 不呼叫基類靜態建構函數

單例模式範例

public class MySingleton {
    private static readonly MySingleton _theOneAndOnly;
    static MySingleton() { _theOneAndOnly = new MySingleton(); }
    public static MySingleton TheOnly { get { return _theOneAndOnly; } }
    private MySingleton() { }
}
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved