版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/themagickeyjianan/article/details/87895325
/**
* 类基础
*/
class Person {
// 类的成员属性
private _name: string = "";
age: number = -1;
interestes: string[] = [];
// 好处是可以提前过滤
set name(n: string) {
this._name = n;
}
get name(): string {
return this._name;
}
constructor(n: string, a: number, i: string[]){
this.name = n;
this.age = a;
this.interestes = i;
}
// 类的实例方法
say(): void {
console.log("name:", this.name, "age:", this.age, "interestes:", this.interestes);
}
}
//
class Student extends Person {
schoolName: string = "";
constructor(name: string, age: number, interestes: string[], schoolName: string){
super(name, age, interestes);
this.schoolName = schoolName;
}
say(): void {
console.log("\nname =", this.name, "\nage =", this.age, "\ninterestes =", this.interestes, "\nmy school name =", this.schoolName);
console.log("\nname =", this.name, "\nage =", this.age, "\ninterestes =", this.interestes, "\nmy school name =", this.schoolName);
}
}
//
let p = new Student("jn", 26, ["node.js", "c++ lua"], "许昌");
p.say();
/**
* 静态数据成员
*/
class Animal {
public static _name: string = "";
static eat(e: string): void {
console.log(Animal._name, "eat something");
}
}
Animal._name = "dog";
Animal.eat("meat");