JavaScriptにおけるクラスの基本


まず、クラスの定義方法です。以下の例では、"Person"というクラスを定義しています。

class Person {
  constructor(name, age) {
    this.name = name;
    this.age = age;
  }
  sayHello() {
    console.log(`Hello, my name is ${this.name} and I'm ${this.age} years old.`);
  }
}

上記の例では、constructorメソッドでクラスのインスタンスを初期化します。thisキーワードを使用して、引数で与えられた値をクラスのプロパティに代入しています。また、sayHelloメソッドでは、インスタンスの情報を表示するための関数を定義しています。

次に、クラスからオブジェクトを作成する方法です。以下の例では、"person1"というオブジェクトを作成しています。

const person1 = new Person("Alice", 25);
person1.sayHello();

上記の例では、newキーワードを使用して、クラスから新しいオブジェクトを作成しています。Personクラスのconstructorメソッドに渡された引数が、オブジェクトのプロパティに設定されます。そして、sayHelloメソッドを呼び出してオブジェクトの情報を表示しています。

さらに、クラスでは継承という機能もサポートしています。以下の例では、"Student"クラスが"Person"クラスを継承しています。

class Student extends Person {
  constructor(name, age, grade) {
    super(name, age);
    this.grade = grade;
  }
  sayHello() {
    super.sayHello();
    console.log(`I'm a student in grade ${this.grade}.`);
  }
}
const student1 = new Student("Bob", 18, 12);
student1.sayHello();

上記の例では、extendsキーワードを使用して、"Student"クラスが"Person"クラスを継承しています。superキーワードを使用して、親クラスのconstructorメソッドを呼び出し、継承元のプロパティを初期化しています。また、sayHelloメソッドをオーバーライドして、追加の処理を行っています。

以上がJavaScriptにおけるクラスの基本的な使い方です。クラスを使用することで、オブジェクト指向プログラミングの原則に従ってコードを構造化することができます。