hack注釋

2018-10-02 10:33 更新

在Hack中有三個(只有三個)可以明確注釋類型的地方:

  • 函數(shù)/方法返回
  • 參數(shù)
  • 類屬性

函數(shù)和方法返回

函數(shù)和方法返回類型用:以下函數(shù)或方法的名稱和參數(shù)列表進(jìn)行注釋:

function <name>([parameters]):<type> 
function foo():int {}

注意:您可以在名稱/參數(shù)列表和:。 注意:關(guān)閉也可以注釋返回類型

功能和方法參數(shù)

函數(shù)和方法參數(shù)用參數(shù)名稱前面的類型注釋如下:

function <name>(<ptype> <$ pname>):<rtype> 
function foo(int $ x):void {}

注意:參數(shù)的默認(rèn)參數(shù)必須與提供的類型注釋相匹配。

類屬性

類屬性使用屬性名稱之前的類型進(jìn)行注釋,如下所示:

<modifiers> <type> <$ pname>; 
public int $ x;

Abstract final classes

Hack中的一個類可以被標(biāo)記為abstract和final。這意味著該類只能具有靜態(tài)方法和屬性,而不能構(gòu)造函數(shù)。static除了數(shù)據(jù)類型之外,還可以注釋屬性。

abstract final class X {
  public static array<int> $a = array();
}

抽象類常量

除了使用數(shù)據(jù)類型鍵入屬性之外,還可以在抽象類或接口中聲明常量抽象。

interface I {
  abstract const int MY_CONST;
}

abstract class Y {
  abstract const int MY_CONST;
}

局部變量

您不要鍵入注釋局部變量。它們由類型檢測器自動推斷。


以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號