TypeScript abstract 抽象類

admin發表於2019-03-01

抽象類做為其它派生類的基類使用 一般不會直接被例項化。

 不同於介面,抽象類可以包含成員的實現細節。

abstract關鍵字是用於定義抽象類和在抽象類內部定義抽象方法。

下面看一段程式碼片段:

[typescript] 純文字檢視 複製程式碼
abstract class Antzone {
  abstract do(): void;
  show(): void {
    console.log('螞蟻部落');
  }
}

抽象類中的抽象方法不包含具體實現並且必須在派生類中實現。 

抽象方法的語法與介面方法相似,兩者都是定義方法簽名但不包含方法體。 

然而,抽象方法必須包含 abstract關鍵字並且可以包含訪問修飾符。

程式碼例項如下:

[typescript] 純文字檢視 複製程式碼
abstract class AbAntzone {
  abstract do(): void;
  constructor(public webName: string) {
  }
  show(): void {
    console.log('螞蟻部落');
  }
}
 
class Antzone extends AbAntzone{
  constructor() {
    super('螞蟻部落');
  }  
  do():void{
    console.log("繼承的抽象方法");
  }
}
let antzone=new Antzone();
antzone.do();
antzone.show();

上述程式碼比較簡單,不再做進一步分析,有問題可以在底部留言。

相關文章