😽

クラスとインスタンスとは?入門(JavaScript)

2024/05/04に公開

クラス

  • コードを整理して管理しやすくするための仕組み
  • クラスは同じような特性や機能を持つ複数のオブジェクトを作るための設計図

// 動物クラスの定義
class Animal {
  constructor(name) {
    this.name = name;
  }

  // 動物が鳴くメソッド
  makeSound(sound) {
    console.log(`${this.name}${sound}と鳴きました!`);
  }

  // 動物が食べるメソッド
  eat(food) {
    console.log(`${this.name}${food}を食べました!`);
  }
}

// 犬のオブジェクトを作成
const dog = new Animal("犬");
dog.makeSound("ワンワン"); // 出力: 犬がワンワンと鳴きました!
dog.eat("骨"); // 出力: 犬が骨を食べました!

// 猫のオブジェクトを作成
const cat = new Animal("猫");
cat.makeSound("ニャー"); // 出力: 猫がニャーと鳴きました!
cat.eat("魚"); // 出力: 猫が魚を食べました!

まずAnimalというクラスを定義。
constructor(コンストラクタは後で説明)で動物の名前を受け取り、makeSound(鳴く)とeat(食べる)というメソッドがあります。
Animalクラスからdogとcatというそれぞれの動物のオブジェクトを作成し、makeSoundとeatメソッドを呼び出しています

コンストラクタとは

  • クラスの中でしようされるメソッド(必須ではない、用途次第)
  • constructorという名前のメソッドとして定義
  • 初期状態で実行する内容
  • 引数もわたせる(new クラス名(引数))

thisは?

thisはAnimalを指します。クラス内で使用できる。

インスタンス

  • めっちゃ簡単に言うとクラスを実行するためのもの。
  • new クラス名()で実行

ざっくりと理解する目的なので、今回はここまで
参考↓

https://youtu.be/l-IoqkyZxW8?si=CDvos5vRrjH2KMqo

Discussion