工具類、單例模式常用:
class MyClass
{
private MyClass() { } // 外部無法 new
public static void Msg1() => Console.WriteLine("Msg1");
public static void Msg2() => Console.WriteLine("Msg2");
}
MyClass.Msg1(); // 正常
// new MyClass(); // 編譯錯誤
class MyClass
{
private int _num;
public int Num => _num;
public MyClass(int x, int y) => _num = x + y; // 只有這個
}
// 正常
var obj = new MyClass(1, 2);
Console.WriteLine(obj.Num); // 3
// 錯誤:無預設建構函式
// var obj2 = new MyClass(); // CS1729