コンテンツにスキップ

クラス・構造体

クラスの定義

予約語の class の次に、クラス名を指定したブロックを定義します。

class クラス名 {
}

コンストラクタ

ブロック内でクラス名と同じ名前でpublicのメソッドを定義すると、コンストラクタになります。これはクラスオブジェクト生成時に一度だけ呼び出されます。

以下が最小限のサンプルコードになります。

class Test {
    public Test()
    {
    }
}

メンバ変数

class Test {
    float Data;
}

メソッド定義

class Test {
    float Data;

    public void Foo()
    {
        Data = 0.0f;
    }
}

アクセス指定子

メンバやメソッドの宣言の前に、public を指定すると、classの外部からこのメンバにアクセスできるようになります。

private を指定すると、外部からそのメンバにアクセスすることはできません。アクセス指定子を省略した場合も、private 指定と同様の振る舞いになります。

オブジェクトの生成

クラスオブジェクトを生成するにはnew演算子を使用します。

class Test {
}

Test obj;
obj = new Test();

オブジェクトの削除

オブジェクトを削除するにはnullを代入します。どこからも参照されなくなれば削除されます。

Test obj;
obj = new Test();

obj = null;

オブジェクトが存在するかどうかの確認

===演算子、!==演算子を使用してnullと比較します。

if (obj !== null) {
    // 存在する
}

if (obj === null) {
    // 存在しない
}