面向对象

接口

TypeScript 接口定义如下:

1
2
3
4
interface RunOptions { 
    program:string; 
    commandline:string[]|string|(()=>string); 
}

在 Interface 中定义方法:

1
2
3
4
interface IEmployee {
    getSalary: (number) => number; // arrow function
    getManagerName(number): string; 
}

Interface 可以定义方法类型。

继承使用关键字 extends,单接口继承语法格式:

1
Child_interface_name extends super_interface_name

多接口继承语法格式:

1
Child_interface_name extends super_interface1_name, super_interface2_name,,super_interfaceN_name

定义类的关键字为 class,后面紧跟类名,类可以包含以下几个模块(类的数据成员):

  • 字段:字段是类里面声明的变量。字段表示对象的有关数据。
  • 构造函数:类实例化时调用,可以为类的对象分配内存。
  • 方法:方法为对象要执行的操作。

比如:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
class Car { 
   // 字段
   engine:string; 
   
   // 构造函数
   constructor(engine:string) { 
      this.engine = engine 
   }  
   
   // 方法
   disp():void { 
      console.log("函数中显示发动机型号  :   "+this.engine) 
   }
}

类不能直接对外暴露,需要通过实现一个接口,外部通过接口调用。

对象

泛型