0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【C#】インスタンスとは?

Posted at

クラスとインスタンスの関係

まずは簡単にイメージから

  • クラス:設計図
  • インスタンス:設計図から作られた実際の“モノ”

たとえば、「人間」というクラスがあったら、
「山田さん」や「田中さん」はそのクラスから作られたインスタンスです。

public class Person
{
    public string Name { get; set; }

    public void SayHello()
    {
        Console.WriteLine($"こんにちは、{Name}です!");
    }
}

この Person クラスはまだ設計図の段階です。
このままでは動きません。

インスタンスを作る(生成する)

クラスから実際の“オブジェクト”を作るには、
new キーワード を使います

Person p1 = new Person();
p1.Name = "山田";
p1.SayHello();  // こんにちは、山田です!

ここで p1 が「インスタンス」です。
つまり、「Personクラスの実体」となります。

複数のインスタンスを作る

同じクラスから、いくつでもインスタンスを作れます。

Person p1 = new Person();
p1.Name = "山田";

Person p2 = new Person();
p2.Name = "田中";

p1.SayHello();  // こんにちは、山田です!
p2.SayHello();  // こんにちは、田中です!

同じ設計図(Personクラス)でも、
それぞれが独立した“実体”を持っていることが分かります。

インスタンスを使う理由

クラスはあくまで設計図なので、
実際に動くためには“現物”が必要です。

インスタンスを作ることで

  • プロパティ(データ)を持てる
  • メソッド(処理)を実行できる
  • 同じクラスでも独立して動作できる

というメリットがあります。

まとめ

用語 意味
クラス 設計図(どんなデータ・機能を持つか)
インスタンス 設計図から作った実際のモノ
new クラスからインスタンスを作るキーワード

クラスだけでは動かない。
“動くもの”を作るには、インスタンスが必要!

0
1
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?