本文主要介紹了C# 靈活使用類的方法,具有很好的參考價值,下面跟著小編一起來看下吧
建構函式
概括:建構函式是類中的一種特殊的方法,主要完成對象的初始化工作,在建立對象的時候完成指定的工作。而且建構函式方法名和類名相同,沒有傳回值類型。
無參建構函式
在預設的情況下,系統會給類分配一個無參建構函式,並且沒有方法體。但我們也可以自訂一個無參建構函式,在建立對象的時候自動給屬性一個預設值。
class Demo { public string DemoName { get; set; } public Demo() //建立無參建構函式 { this.DemoName = "無參建構函式"; //方法體內寫在建立對象時需要初始化的屬性 } }
小技巧:在Visual Studio中建立無參建構函式的捷徑是‘ctor' + 兩個tab鍵;建立屬性的捷徑是‘prop' + 兩個tab鍵。
帶參建構函式
有時我們需要在建立對象的時候給對象的屬性指定一些值,而這些值是一定的,所以我們需要帶參建構函式。
class Demo { public string DemoName { get; set; } public Demo(string DemoName) //建立帶參建構函式 { this.DemoName = DemoName; } } class Test { Demo demo = new Demo("帶參建構函式"); //建立對象時在小括弧內指定值 }
另外需要注意幾個事項:
1.建立對象時小括弧內給出的參數必須和帶參建構函式的參數列表相同。
2.類中有了帶參建構函式後,建立對象便必須在小括弧內給出相應的值。因為在C#中一旦類有了建構函式,就不再自動分配建構函式。(推薦建立了帶參建構函式後再建立一個無參建構函式。)
追加:
還有另一種快捷的初始化屬性的方法,即對象初始化器。
用法:Demo demo = new Demo(){ Name = "對象初始化器"};
或:Demo demo = new Demo{ Name = "對象初始化器"};
方法重載
概括:同一件事情,根據不同的參數來執行不同的操作,即方法重載。
特點:每個方法名相同、參數列表不同、在同一個類中。
註:參數列表不同指每個方法的參數類型不同或參數順序不同或參數個數不同。
僅傳回值不同是不構成方法重載的。
例:
class Demo { public string DemoName { get; set; } /*********建構函式重載********/ public Demo() { this.DemoName = "無參建構函式"; } public Demo(string demoName) { this.DemoName = demoName; } /**********方法重載**********/ public void SayHello(string name) { Console.WriteLine("你好,我是{0},很高興認識你。", name); } public void SayHello(string name, int age) { Console.WriteLine("你好,我是{0},今年{1}歲,很高興認識你。", name, age); } } class Test { /*********建構函式重載********/ Demo demo = new Demo(); Demo demo1 = new Demo("帶參建構函式"); /**********方法重載**********/ public void Test() { demo.SayHello("小明"); demo.SayHello("小明", 18); } }