[生活コードJSオブジェクト向けプログラミング]04クラス(クラス)&継承(継承)&super


JavaScriptのクラス


*クラスの作成


class Person {}
let kim = new Person();
console.log(kim);
//Person {}
エンティティを作成するファクトリとしてclassがサポートされているのは、勘定科目の勘定科目java、pythonなどの他の言語です.
classを使用して、すぐにオブジェクトを作成します.
✔️ constructor function
オブジェクトの初期関数は、constructor()とすることができる.

class Person {
    constructor(name,first,second){
        this.name = name;
        this.first = first;
        this.second = second;
    }
}

let kim = new Person('kim', 10, 20);
console.log(kim);
// Person { name: 'kim', first: 10, second: 20 }
▶▼プロトタイプvsクラス

𕼧JavaScriptの継承


*朕相続とは何ですか?


継承されたクラスが親で、継承されたクラスが子である場合、子が変更されても親は変更されません.ただし、親が変更されると、子も変更されます.親の機能は子に継承されるからです.
✔継承はコード量を著しく減少させる.親は、extendsによって自分のコードを子に継承するので、重複するコードを記述する必要はありません.
✔子クラスは親を必要としないコードを追加し、いつでもこのメソッドを呼び出すことができます.
▼▼受け継がれた子はどうやって実現したのか.
もう一つclassコードを作ります.親コードの貼り付けをコピーし、「クラスの新しい名前extends親」と、追加したコード以外の重複コードを削除します.

extendsによる継承
class PersonPlus extends Person{
    avg() {
        return `prototype : ${ (this.age + this.height) / 2}`;
    }
}
const kim = new PersonPlus('kim', 41, 154);
console.log(kim.sum(),kim.avg());
// prototype : 195 prototype : 97.5

IBM JavaScriptのSuper


*️⃣ Super


子クラスで親クラスを呼び出すときに使用するキーワード.
両親が持っているスキルと私が持っている共通部分をSuperに処理します.
親が持っている因子のほかに、もう一つの因子を追加したい場合は、constructorの代わりにsuperを使用します.

ソース:
生活コードoop:https://www.youtube.com/watch?v=xKQhc8v9R2A&list=PLuHgQVnccGMAMctarDlPyv6upFUUnpSO3&index=17