クラス構成要素のまとめ
これまでに学んだ要素を組み合わせることで、複雑なモノの仕組みをプログラムとして表現できます。
設計例:扇風機クラス (Fan)
class Fan {
// 1. 静的プロパティ・定数 (クラス共通)
static totalCount = 0;
static MAX_SPEED = 3;
// 2. コンストラクタ (初期化)
constructor(modelName) {
this.modelName = modelName;
this.speed = 0;
this.isPowerOn = false;
Fan.totalCount++; // 生成されるたびにカウントアップ
}
// 3. メソッド (振る舞い)
power() {
this.isPowerOn = !this.isPowerOn;
this.speed = this.isPowerOn ? 1 : 0;
}
}
用語の再確認
- 静的(static)要素
- クラス自体に紐付くデータ。インスタンス化せずに
Fan.totalCountのように使います。 - インスタンス要素
- 個々の実体に紐付くデータ。
this.speedのようにそれぞれの状態を管理します。 - インスタンス化
new Fan("モデルA")で設計図から実体を生み出すアクションです。