TypeScript的类
1.ts中定义类
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | class Person{ name:string; //属性 前面省略了public关键词 constructor(name:string){ //构造函数 实例化类的时候触发的方法 this .name=name; } getName():string{ return this .name; } setName(name:string):void{ this .name=name; } run():void{ alert( this .name); } } var p= new Person( '张三' ); alert(p.getName()); p.setName( '李四' ); alert(p.getName()); p.run() |
2.ts中实现继承 extends、super
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | class Person{ name:string; constructor(name:string){ this .name=name; } run():string{ return `${ this .name}在运动` } } class Web extends Person{ constructor(name:string){ super (name); /*初始化父类的构造函数*/ } } var w= new Web( '李四' ); w.run(); |
3.类里面的修饰符:public、protected、private
4.静态属性 静态方法
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | class Person{ public name:string; public age:number=20; static sex= "男" ; //静态属性 constructor(name:string) { this .name=name; } run(){ /*实例方法*/ alert(`${ this .name}在运动`) } work(){ alert(`${ this .name}在工作`) } static print(){ /*静态方法 里面没法直接调用类里面的属性*/ alert( 'print方法' +Per.sex); } } Person.print(); alert(Person.sex); |
5.多态:父类定义一个方法不去实现,让继承它的子类去实现
每一个子类有不同的表现,多态属于继承
6.抽象类
它是提供其他类继承的基类,不能直接被实例化。
用abstract关键字定义抽象类和抽象方法,抽象类中的抽象方法不包含具体实现并且必须在派生类中实现。
abstract抽象方法只能放在抽象类里面。
抽象类和抽象方法用来定义标准。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步