まとめ
クラスとは
クラスはオブジェクトを作成するためのテンプレートです。処理するためのコードでデータをカプセル化します。
※mdn web docs
コンストラクタとは
クラスで作成したオブジェクトを作成して初期化するための特別なメソッドです。 "constructor" という名前の特別なメソッドは、クラスに 1 つしか定義できません。クラスに複数の constructor メソッドが存在した場合、SyntaxError が発生します。
※mdn web docs
メソッドとは
メソッドはクラスごとにプロトタイプに定義され、すべてのインスタンスで共有されます。メソッドには、プレーン関数、非同期関数、ジェネレーター関数、非同期ジェネレーター関数があります
※mdn web docs
目次
使用するコード
//クラス
class Person {
//コンストラクタ(特別なメソッド)
constructor(name, age) {
//プロパティ
this.name = name;
this.age = age;
}
//メソッド
greet() {
console.log('Hello, ' + this.name);
}
}
//クラスを用いたインスタンスの生成
const john = new Person('John', 30);
// インスタンスのメソッドの呼び出し
john.greet(); // 出力: Hello, John
クラスとは
- オブジェクトを生成するための設計図(テンプレート)です。クラスにはプロパティとメソッドを定義することができ、そのクラスから生成されたオブジェクトはそれらのプロパティとメソッドを継承します。
クラス
class Person {
// クラスの中身(プロパティとメソッド)を定義
}
解説
-
Person
という名前のクラスを定義しています。このクラスは、人の情報を表現するためのプロパティとメソッドを持ちます。
コンストラクタとは
- クラスから新しいインスタンス(オブジェクト)が生成されるときに呼び出される特別なメソッドです。コンストラクタを使って、インスタンスの初期化を行います。
コンストラクタ
constructor(name, age) {
this.name = name;
this.age = age;
}
解説
-
constructor
は、クラスのインスタンスが作成されるときに実行される特別なメソッド(コンストラクタ)です。 -
name
とage
はコンストラクタの引数で、新しいインスタンスのname
とage
プロパティを初期化するために使われます。 -
this.name = name
によって、クラスのインスタンスのname
プロパティが初期化されます。同様に、this.age = age
によってage
プロパティが初期化されます。
プロパティとは
クラスのインスタンスが持つデータや属性を表します。プロパティは、コンストラクタ内で初期化され、クラスのインスタンスによって保持されます。
プロパティ
this.name = name;
this.age = age;
解説
-
name
とage
はPerson
クラスのプロパティです。 - これらのプロパティは、クラスのインスタンスごとに異なる値を持つことができます。
メソッドとは
- クラスやオブジェクトに関連付けられた関数です。メソッドはクラスのインスタンスによって呼び出され、インスタンスのプロパティにアクセスしたり、操作を行ったりします。
メソッド
greet() {
console.log('Hello, ' + this.name);
}
解説
-
greet
はPerson
クラスのメソッドです。 - このメソッドは
this.name
プロパティを使用して、挨拶のメッセージをコンソールに表示します。
活用例1
Person
クラスを使ってインスタンスを生成し、そのインスタンスのメソッドを呼び出します。
const john = new Person('John', 30);
john.greet(); // 出力: Hello, John
解説
-
const john = new Person('John', 30)
はPerson
クラスの新しいインスタンスを生成します。このとき、constructor
メソッドが呼び出されname
とage
が設定されます。 -
john
はPerson
クラスのインスタンスです。john
インスタンスにはname
プロパティとしてJohn
、age
プロパティとして30
が設定されています。 -
john.greet()
はjohn
インスタンスのgreet
メソッドを呼び出します。このメソッドは、Hello, John
というメッセージをコンソールに出力します。