TS:中定义类

1,368 阅读1分钟

TS:中定义类

//class 用来创建对象。TS中的class与面向对象语言(java,c++)中的class就比较相似了
//类
class Person{
    name:string;
    constructor(name:string){ //构造函数
        this.name = name;
    }
    say():string{
        console.log(`${this.name}在运动`);
        return `${this.name}在运动`
    }
}
//继承
class Student extends Person{
    //使用readonly关键字将属性设置为只读的。只读属性必须在声明时或构造函数里被初始化
    public readonly classname:string; 
    // 静态属性 static,只能通过类名访问Student.num;
    static num:number = 1; 
    school:string;
    constructor(school:string,classname:string,name:string){
        super(name);
        this.classname = classname;
        this.school = school;
    }
    say():string{
        console.log(`${this.name}${this.school}${this.classname}`);
        return `${this.name}${this.school}${this.classname}`
    }
}
var s = new Student("清华","大一","李四");
s.say();
//抽象类