C#のクラスとインスタンスをメモリ割り当ての図で理解する
Studentクラスは「ひな形」
Student クラスは、Name と Score を持つためのひな形です。new Student() を実行すると、メモリ上に実体が作られます。この実体をオブジェクト、またはインスタンスと呼びます。
student1とstudent2は別々のインスタンスを参照する

student1 は「田中・80点」のインスタンスを、student2 は「山田・90点」のインスタンスを参照しています。同じクラスから作っても、それぞれのデータは別々です。
図の番地は説明用
図の「101番地」「300番地」は、メモリ上の場所を理解しやすくするための説明用イメージです。実際のC#では、student1 や student2 が持つ参照を通してインスタンスを扱います。
もう少し詳しく:参照変数とメモリのイメージ
student1 と student2 が持っているのは、インスタンスそのものではなく、インスタンスを指し示す「参照」です。次の図では、参照変数とメモリ上の実体の関係を、もう少し詳しく表しています。

※ この図について:図のスタック領域・ヒープ領域や「101番地」「300番地」は、仕組みを理解しやすくするための概念図です。実際の配置やアドレスは、.NETの実行環境によって管理されます。
訪問数 2 回, 今日の訪問数 2回








ディスカッション
コメント一覧
まだ、コメントがありません