C#のクラスインスタンスとは?オブジェクトの基本と使い方を解説
クラスインスタンスとは
クラスインスタンスとは、すなわちオブジェクトのことです。C#は他のオブジェクト指向言語と同様に、オブジェクトとクラスという概念を持っています。オブジェクトは現実世界の実体(エンティティ)を表し、クラスを実際に生成したものがインスタンスです。クラスのメンバー(フィールドやメソッド)には、このオブジェクトを通じてアクセスします。
ドット演算子でメンバーにアクセスする
クラスのメンバーにアクセスするには、オブジェクト名の後にドット(.)演算子を付けます。ドット演算子は、オブジェクトの名前とメンバーの名前を結び付ける役割を果たします。
例えば、次のコードでは Box クラスのオブジェクト Box1 を生成しています。
Box Box1 = new Box();
new キーワードによってメモリ上にインスタンスが生成され、変数 Box1 がその参照を保持します。この Box1 を使って、クラスのメンバーへアクセスできます。
フィールドへのアクセス例:
Box1.height = 7.0;
メソッドの呼び出し例:
Box1.getVolume();
C#におけるオブジェクトとクラスの動作例
以下は、C#でオブジェクトとクラスがどのように連携して動作するかを示す完全なサンプルコードです。Box クラスを定義し、そのインスタンスを2つ作成して、それぞれの体積を計算しています。
using System;
namespace BoxApplication {
class Box {
private double length; // 箱の長さ
private double breadth; // 箱の幅
private double height; // 箱の高さ
public void setLength(double len) {
length = len;
}
public void setBreadth(double bre) {
breadth = bre;
}
public void setHeight(double hei) {
height = hei;
}
public double getVolume() {
return length * breadth * height;
}
}
class BoxTester {
static void Main(string[] args) {
// オブジェクトを2つ生成
Box Box1 = new Box(); // Box型の変数Box1を宣言
Box Box2 = new Box();
double volume;
// オブジェクト経由でメンバー関数を呼び出す
Box1.setLength(6.0);
Box1.setBreadth(7.0);
Box1.setHeight(5.0);
// Box2の設定
Box2.setLength(12.0);
Box2.setBreadth(13.0);
Box2.setHeight(10.0);
// Box1の体積を表示
volume = Box1.getVolume();
Console.WriteLine("Volume of Box1 : {0}", volume);
// Box2の体積を表示
volume = Box2.getVolume();
Console.WriteLine("Volume of Box2 : {0}", volume);
Console.ReadKey();
}
}
}
実行結果
Volume of Box1 : 210 Volume of Box2 : 1560
ポイントまとめ
- クラスは「設計図」、インスタンス(オブジェクト)はその設計図から生成された「実体」である
newキーワードを使ってインスタンスを生成する- ドット演算子(.)を使ってフィールドやメソッドにアクセスする
- 1つのクラスから、それぞれ独立した状態を持つ複数のインスタンスを作成できる
-
C#のクラスにおけるメンバー関数とは?定義方法と使い方を実例で解説
メンバー関数とはクラスのメンバー関数(メソッド)とは、クラス定義の中でその定義やプロトタイプ(宣言)が記述される関数のことです。変数と同様にクラス内に宣言され、そのクラスのオブジェクトに対して操作を行います。また、そのオブジェクトが持つすべてのメンバー(フィールドやプロパティなど)にアクセスすることができます。以下は、メンバー関数の定義例です。public void setLength(double len) { length = len; } public void setBreadth(double bre) { breadth = bre; }C#でのメンバー関数へのアク
-
C#のクラスとは?基本構文からサンプルコードまで徹底解説
C#におけるクラスとは、データ型の「設計図(ブループリント)」に相当するものです。クラスをもとに生成された実体をオブジェクトと呼び、オブジェクトはクラスのインスタンスであるといえます。また、クラスを構成するメソッドや変数は、まとめてクラスのメンバーと呼ばれます。クラスの一般的な定義形式C#でクラスを定義する際の一般的な書式は以下のとおりです。<アクセス修飾子> class クラス名 { // メンバー変数 <アクセス修飾子> <データ型> 変数1; &