.NET 基礎 一步步 一幕幕[面向對象之構造函數、析構函數]

構造函數、析構函數數據庫

構造函數:網絡

語法:ide

//無參的構造函數函數

[訪問修飾符] 函數名() ;函數名必須與類名相同。this

//有參的構造函數spa

[訪問修飾符] 函數名(參數列表);函數名必須與類名相同。code

做用:幫助咱們初始化對象(給對象的每一個屬性依次的賦值)對象

構造函數是一個特殊的方法:blog

1)、構造函數沒有返回值,連void也不能寫。資源

2)、構造函數的名稱必須跟類名同樣。

3)、構造函數有無參和有參之分。

建立對象的時候會執行構造函數,構造函數是能夠有重載的。

***

類當中會有一個默認的無參數的構造函數,當你寫一個新的構造函數以後,無論是有參數的仍是無參數的,那個默認的無參數的構造函數都被幹掉了。

代碼展現:

//定義一個類:

public class Student
{
  private string _name;
        public string Name
        {
            get { return _name; }
            set { _name = value; }
        }
        private int _age;
        public int Age
        {
            get { return _age; }
            set { _age = value; }
        }
        
}
View Code

//定義無參的構造函數

public Student()
        { 
            Console.WriteLine("我是構造函數!!!");
        }
View Code

//定義有參的構造函數

public Student(string name, int age )
        {
            this.Name = name;
            this.Age = age; 
        }
View Code

 

析構函數:

語法:~(」~」)函數名; 函數名必須與類名相同。

規則:一個類只能有一個析構函數;

        析構函數不能重載;

        析構函數不能顯示或手動調動,只能由垃圾回收站(GC)自動調用。

注意:析構函數不接受任何參數,也不帶任何訪問修飾符。析構函數的主體包括了一些代碼,一般用於關閉由實例打開的數據庫,文件或網絡鏈接等。

代碼展現:

public class Student
{
  private string _name;
        public string Name
        {
            get { return _name; }
            set { _name = value; }
        }
        private int _age;
        public int Age
        {
            get { return _age; }
            set { _age = value; }
        }
        
}
View Code

//析構函數

//當程序結束的時候  析構函數才執行
        //幫助咱們釋放資源
        //GC Garbage Collection
        ~Student()
        {
            Console.WriteLine("我是析構函數");
        }
View Code

總結:

構造函數:用於初始化對象。

析構函數:釋放資源。

本篇就到這裏了,最後打個小廣告:QQ羣: .NET 一步步一幕幕  羣號:590170361 (加羣備註:博客園看到的)

相關文章
相關標籤/搜索