// 自执行函数的作用是形成单独模块(块作用域), // 防止此文件的变量或方法与其他文件的属性或方法冲突 (function () { class Animal { name: string; constructor(name: string) { this.name = name; } sayHello() { console.log(this.name); // 旺财 console.log('动物在叫~'); // 动物在叫~ } } class Dog extends Animal { age: number; constructor(name: string, age: number) { // 如果在子类中写了构造函数,相当于重写了父类的构造函数。 // 在子类构造函数中必须对父类的构造函数进行调用, // 否则父类的构造函数不会执行 super(name); this.age = age; } sayHello() { // 在类的方法中super就表示当前类的父类 super.sayHello(); console.log('汪汪汪汪!'); // 汪汪汪汪! console.log(`${this.name}${this.age}岁了。`); // 旺财3岁了。 } } const dog = new Dog('旺财', 3); dog.sayHello(); })();
typescript中class的继承(inherit)、extends、super
关注
打赏