工業製造
産業用モノのインターネット | 工業材料 | 機器のメンテナンスと修理 | 産業プログラミング |
home  MfgRobots >> 工業製造 >  >> Industrial programming >> C言語

C# クラスとオブジェクト

C# クラスとオブジェクト

このチュートリアルでは、例を使用して C# のクラスとオブジェクトの概念について学習します。

C# はオブジェクト指向プログラムです。オブジェクト指向プログラミング (OOP) では、複雑な問題をオブジェクトに分割することで解決します。

オブジェクトを操作するには、次のアクティビティを実行する必要があります:


C# クラス

オブジェクトについて学ぶ前に、クラスの働きを理解する必要があります。クラスはオブジェクトの設計図です。

クラスは家のスケッチ(プロトタイプ)と考えることができます .床、ドア、窓などに関するすべての詳細が含まれています。これらの説明に基づいて家を建てることができます。 ハウス

スケッチから多くの家を作ることができるように、クラスから多くのオブジェクトを作成できます。

C# でクラスを作成

class キーワードを使用してオブジェクトを作成します。たとえば、

class ClassName {

}

ここでは、ClassName という名前のクラスを作成しました。 .クラスには

を含めることができます

例を見てみましょう。

class Dog {
 
  //field
  string breed;
 
  //method
  public void bark() {

  }
 
}

上記の例では、

注意 :C# では、クラス内のフィールドとメソッドはクラスのメンバーと呼ばれます。


C# オブジェクト

オブジェクトはクラスのインスタンスです。 Dog クラスがあるとします。 .ブルドッグ、ジャーマン シェパード、パグはクラスのオブジェクトです。

クラスのオブジェクトの作成

C# では、クラスのオブジェクトを作成する方法を次に示します。

ClassName obj = new ClassName();

ここでは、new を使用しました。 クラスのオブジェクトを作成するためのキーワード。そして、obj オブジェクトの名前です。それでは、Dog からオブジェクトを作成しましょう。 クラス。

Dog bullDog = new Dog();

さて、ブルドッグ オブジェクトは Dog のフィールドとメソッドにアクセスできます クラス。


オブジェクトを使用してクラス メンバーにアクセスする

. とともにオブジェクトの名前を使用します クラスのメンバーにアクセスする演算子。たとえば、

using System;

namespace ClassObject {

  class Dog {
    string breed;

    public void bark() {
      Console.WriteLine("Bark Bark !!");
      
    }

    static void Main(string[] args) {

      // create Dog object 
      Dog bullDog = new Dog();

      // access breed of the Dog 
      bullDog.breed = "Bull Dog";
      Console.WriteLine(bullDog.breed);

      // access method of the Dog
      bullDog.bark();   

      Console.ReadLine();
     
    }
  }
}

出力

Bull Dog
Bark Bark !!

上記のプログラムでは、bullDog という名前のオブジェクトを作成しました。 から クラス。オブジェクト名と . を使用していることに注意してください (ドット演算子) 品種にアクセスします フィールド

// access breed of the Dog
bullDog.breed = "Bull Dog";

そして bark() メソッド

// access method of the Dog
bullDog.bark();

クラスの複数のオブジェクトの作成

同じクラスから複数のオブジェクトを作成できます。たとえば、

using System;

namespace ClassObject {

  class Employee {

    string department;

    static void Main(string[] args) {

      // create Employee object 
      Employee sheeran = new Employee();

      // set department for sheeran
      sheeran.department = "Development";
      Console.WriteLine("Sheeran: " + sheeran.department);

      // create second object of Employee
      Employee taylor = new Employee();

      // set department for taylor
      taylor.department = "Content Writing";
      Console.WriteLine("Taylor: " + taylor.department);

      Console.ReadLine();
    }
  }
}

出力

Sheeran: Development
Taylor: Content Writing

上記の例では、2 つのオブジェクトを作成しました:sheeranテイラー 従業員から クラス。

ここでは、両方のオブジェクトが独自のバージョンの 部門 を持っていることがわかります 異なる値を持つフィールド。


別のクラスでのオブジェクトの作成

C# では、あるクラスのオブジェクトを別のクラスに作成することもできます。たとえば、

たとえば、

using System;

namespace ClassObject {

  class Employee {
    public string name;

    public void work(string work) {
      Console.WriteLine("Work: " + work);
      
    }
  }

  class EmployeeDrive {
    static void Main(string[] args) {

      // create Employee object 
      Employee e1= new Employee();

      Console.WriteLine("Employee 1");

      // set name of the Employee 
      e1.name="Gloria";
      Console.WriteLine("Name: " + e1.name);

      //call method of the Employee
      e1.work("Coding"); 

      Console.ReadLine();
     
    }
  }
}

出力

Employee 1
Name: Gloria
Work: Coding

上記の例では、2 つのクラスがあります:EmployeeEmployeeDrive .ここでは、オブジェクト e1 を作成しています 従業員EmployeeDrive のクラス クラス。

e1 を使用しました Employee のメンバーにアクセスするためのオブジェクト EmployeeDrive のクラス . Employee のメンバーが クラスは public です .

ここでは、public クラスメンバーが他のクラスからアクセスできることを意味するアクセス指定子です。詳細については、C# アクセス修飾子をご覧ください。


オブジェクトとクラスを使用する理由

オブジェクトとクラスは、大きなプロジェクトを小さなサブ問題に分割するのに役立ちます.

何百もの敵がいて、それぞれに health のようなフィールドがあるゲームを作成したいとします。 、弾薬 、および shoot() などのメソッド および run() .

OOP を使用すると、単一の を作成できます 必須フィールドとメソッドを持つクラス。次に、そこから複数の敵オブジェクトを作成できます。

各敵オブジェクトには、独自のバージョンの ヘルス があります そして弾薬 田畑。そして、彼らは共通の shoot() を使用できます および run() メソッド。

これで、プロジェクトを変数とメソッドの観点から考える代わりに、オブジェクトの観点から考えることができます。

これにより、複雑さを管理し、コードを再利用可能にすることができます。


C言語

  1. C# の抽象クラスとメソッド
  2. C# 部分クラスと部分メソッド
  3. C# の封印されたクラスとメソッド
  4. C++ クラスとオブジェクト
  5. C++ フレンド関数とフレンド クラス
  6. Python オブジェクト指向プログラミング
  7. Java クラスとオブジェクト
  8. Java 抽象クラスと抽象メソッド
  9. Java のネストされた内部クラス
  10. Java シングルトン クラス
  11. Java リフレクション