C# 中的構造函數與析構函數


C# 中的構造函數

類的 構造函數 是類的一個特殊的成員函數,當創建類的新對象時執行。

構造函數的名稱與類的名稱完全相同,它沒有任何返回類型。

下面的實例說明了構造函數的概念:

using System; namespace LineApplication { class Line { private double length; // 線條的長度 public Line() { Console.WriteLine("對象已創建"); } public void setLength( double len ) { length = len; } public double getLength() { return length; } static void Main(string[] args) { Line line = new Line(); // 設置線條長度 line.setLength(6.0); Console.WriteLine("線條的長度: {0}", line.getLength()); Console.ReadKey(); } } }

當上面的代碼被編譯和執行時,它會產生下列結果:

對象已創建 線條的長度: 6

默認的構造函數沒有任何參數。但是如果您需要一個帶有參數的構造函數可以有參數,這種構造函數叫做參數化構造函數。這種技術可以幫助您在創建對象的同時給對象賦初始值,具體請看下面實例:

using System; namespace LineApplication { class Line { private double length; // 線條的長度 public Line(double len) // 參數化構造函數 { Console.WriteLine("對象已創建,length = {0}", len); length = len; } public void setLength( double len ) { length = len; } public double getLength() { return length; } static void Main(string[] args) { Line line = new Line(10.0); Console.WriteLine("線條的長度: {0}", line.getLength()); // 設置線條長度 line.setLength(6.0); Console.WriteLine("線條的長度: {0}", line.getLength()); Console.ReadKey(); } } }

當上面的代碼被編譯和執行時,它會產生下列結果:

對象已創建,length = 10 線條的長度: 10 線條的長度: 6

C# 中的析構函數

類的 析構函數 是類的一個特殊的成員函數,當類的對象超出范圍時執行。

析構函數的名稱是在類的名稱前加上一個波浪形(~)作為前綴,它不返回值,也不帶任何參數。

析構函數用於在結束程序(比如關閉文件、釋放內存等)之前釋放資源。析構函數不能繼承或重載。

下面的實例說明了析構函數的概念:

using System; namespace LineApplication { class Line { private double length; // 線條的長度 public Line() // 構造函數 { Console.WriteLine("對象已創建"); } ~Line() //析構函數 { Console.WriteLine("對象已刪除"); } public void setLength( double len ) { length = len; } public double getLength() { return length; } static void Main(string[] args) { Line line = new Line(); // 設置線條長度 line.setLength(6.0); Console.WriteLine("線條的長度: {0}", line.getLength()); } } }


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM