1. 程式人生 > >【學習筆記】C# 構造和析構

【學習筆記】C# 構造和析構

成員 int 學習 pri [] func 釋放內存 ring 銷毀

  • 構造方法
    • 構造方法是一個特殊的方法,負責初始化對象
    • 構造方法名必須和類名一致
    • 構造方法沒有返回值,但可以有參數,能夠重載
    • 構造方法可以不寫,系統會自動為類添加一個無參的默認構造
    • 如果將構造方法設置為Private,就不能再使用此構造創建實例
  • 析構
    • 析構方法在對象銷毀時調用,用於釋放內存
    • 一個類只能有一個析構方法
    • 析構方法沒有返回值和參數,不能進行重載
    • 析構方法由系統自動調用,不能手動調用
    • 析構方法沒有修飾符
  •   
     1 using System;
     2 
     3 namespace FunctionDemo2
     4 {
     5     public class Person
     6     {
    
    7 public string name; 8 public int age; 9 //構造方法-負責初始化對象 10 //1.構造方法的方法名必須和類名一致 11 //2.構造方法沒有返回值,不需要寫void 12 13 //3.構造方法能夠添加參數 14 public Person(string name, int age) 15 { 16 //初始化成員變量 17 this.name = name; 18 this
    .age = age; 19 Console.WriteLine("構造"); 20 } 21 22 //4.構造方法允許重載 23 public Person() 24 { 25 name = "Li"; 26 age = 14; 27 28 } 29 //5.如果沒有給類添加構造方法,系統會提供一個默認構造 30 //6.如果我們將某個構造方法設為私有類,就不允許再通過這個構造創建對象 31 //private Person()
    32 //{ 33 34 //} 35 //析構方法 - 在對象銷毀時調用,用於釋放內存 36 //1. 每個類只能有一個析構方法 37 //2. 析構方法不能有返回值 38 //3. 析構方法不能有訪問權限修飾符 39 //4. 析構函數不能帶有參數,更不能重載 40 //5. 析構函數由系統自動調用,不能手動調用 41 ~Person() 42 { 43 Console.WriteLine("析構"); 44 } 45 } 46 class Program 47 { 48 static void Main(string[] args) 49 { 50 //使用new關鍵字創建對象的時候,就已經調用了構造方法 51 Person p = new Person("Li", 29); 52 Console.WriteLine(p.name); 53 Console.WriteLine(p.age); 54 55 Console.WriteLine("主函數結束,程序準備退出!"); 56 57 //Person p2 = new Person(); 58 //Console.WriteLine(p2.name); 59 //Console.WriteLine(p2.age); 60 61 } 62 } 63 }

【學習筆記】C# 構造和析構