[node.js]クラスの使い方。継承も紹介。
最近、仕事でnode.jsを使うことになりそうなので基本的な書き方を勉強している。
node.jsというよりJavaScriptのクラスの書き方になるけど、備忘録を兼ねてメモ。
クラスの書き方は2種類
JavaScriptはクラスの書き方が2種類ある。
クラス宣言とクラス式による書き方だ。
個人的には達成手段が複数あるのはあまり好きじゃない。
以下がクラス宣言による書き方。
class ClassName {
//クラスの内容を定義
}
で、こっちがクラス式による書き方。
var ClassName = class {
//クラスの内容を定義
}
勉強している書籍がクラス式を採用していたので、こっちを掘り下げて紹介。
var Person = class {
constructor(name) {
this.name = name
}
greet() {
console.log("Hi")
}
}
コンストラクタで自身のプロパティ(ここではname)に引数の値を渡すことが可能。
またクラス内にメソッドも定義できる。ここではgreetメソッドを定義してみた。
クラスの継承
次に継承を記述してみる。クラスの継承にはextendsを利用する。
var Men = class extends Person {
//クラスの内容を定義
}
親クラスのコンストラクタを呼び出す時は、superというキーワードで呼び出すことができる。
var Men = class extends Person {
constructor(name) {
super(name)
}
sayHi() {
super.greet()
}
}