C#
 Computer >> コンピューター >  >> プログラミング >> C#

C#のコンストラクタとデストラクタの違いは何ですか?


コンストラクター

クラスコンストラクターは、クラスの新しいオブジェクトを作成するたびに実行されるクラスの特別なメンバー関数です。

コンストラクターはクラスとまったく同じ名前であり、戻り型はありません。

コンストラクターの名前はクラス名と同じです-

class Demo {

   public Demo() {}

}

以下は例です-

using System;

namespace LineApplication {
   class Line {
      private double length; // Length of a line

      public Line() {
         Console.WriteLine("Object is being created");
      }

      public void setLength( double len ) {
         length = len;
      }

      public double getLength() {
         return length;
      }

      static void Main(string[] args) {
         Line line = new Line();

         // set line length
         line.setLength(6.0);
         Console.WriteLine("Length of line : {0}", line.getLength());
         Console.ReadKey();
      }
   }
}

出力

Object is being created
Length of line : 6

デストラクタ

デストラクタは、クラスのオブジェクトがスコープ外になるたびに実行されるクラスの特別なメンバー関数です。値を返すことも、パラメータを受け取ることもできません。

チルダ(〜)が前に付いたクラスとまったく同じ名前です。たとえば、クラス名はDemo-

です。
public Demo() { // constructor
   Console.WriteLine("Object is being created");
}

~Demo() { //destructor
   Console.WriteLine("Object is being deleted");
}

C#でデストラクタを操作する方法を学ぶための例を見てみましょう-

using System;

namespace LineApplication {
   class Line {
      private double length; // Length of a line

      public Line() { // constructor
         Console.WriteLine("Object is being created");
      }

      ~Line() { //destructor
         Console.WriteLine("Object is being deleted");
      }

      public void setLength( double len ) {
         length = len;
      }

      public double getLength() {
         return length;
      }

      static void Main(string[] args) {
         Line line = new Line();

         // set line length
         line.setLength(6.0);
         Console.WriteLine("Length of line : {0}", line.getLength());
      }
   }
}

出力

Object is being created
Length of line : 6
Object is being deleted

  1. Wi-Fi 6と5Gネットワ​​ークの違いは何ですか?

    5Gネットワ​​ークは多くの話題を呼んでいるトピックであり、その実装はソーシャルネットワークに存在する会話のトピックです。別のテクノロジーであるWi-Fi6の周りに存在する期待のように。 Wi-Fi6と5Gネットワ​​ークの違いを特定する方法を学ぶ 。 WiFi6とは何ですか? Wi-Fi6は新しい認定に他なりません IEEE802.11ax規格に基づいています。以前のWi-Fiテクノロジーとは異なり、Wi-FI6はより長い距離でより高速な接続を可能にします。 その性能は、複数の接続されたデバイスで最適であり、電気的欠陥の影響を受けることなく適切に機能します。 2.4Ghzと5Ghzの周

  2. Windows 10 と Windows 11 の違いは?

    Microsoft は最新の Windows 11 をリリースし、多くの新機能と改善を行いました。また、多くのパッチとアップデートにより、Windows 10 は新しい Windows 11 よりも安定した OS になりました。同社によると、2025 年以降に Windows 10 でのサポートが終了するため、Windows 11 または Windows 10 へのアップグレードを決定するのに十分な時間があります。 Windows 10 を快適に使用してください。この記事では、Windows 10 と Windows 11 の比較を用意しました。 新しい OS に切り替えるか、Windows