类的泛型
/**
* 父类
*/
export class MyClass<T> {
name: T;
address: string;
static years: number = 365
constructor(name: T, address: string) {
this.name = name;
this.address = address;
}
getFullName() {
return `${this.name}`
}
static staticMethod(){
return 'static method called';
}
}
export const mc = new MyClass<string>('孙悟空', 'china');
console.log(mc.getFullName())
console.log(MyClass.staticMethod(), MyClass.years)
/**
* 子类
*/
export class SubClass extends MyClass<string> {
extension: string;
constructor(name: string, address: string, extension: string){
super(name, address);
this.extension = extension;
}
}
const subClass = new SubClass('猪八戒', 'china', '123');
console.log(subClass.getFullName())