hack注释

2018-10-02 10:33 更新

在Hack中有三个(只有三个)可以明确注释类型的地方:

  • 函数/方法返回
  • 参数
  • 类属性

函数和方法返回

函数和方法返回类型用:以下函数或方法的名称和参数列表进行注释:

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

注意:您可以在名称/参数列表和:。 注意:关闭也可以注释返回类型

功能和方法参数

函数和方法参数用参数名称前面的类型注释如下:

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

注意:参数的默认参数必须与提供的类型注释相匹配。

类属性

类属性使用属性名称之前的类型进行注释,如下所示:

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

Abstract final classes

Hack中的一个类可以被标记为abstract和final。这意味着该类只能具有静态方法和属性,而不能构造函数。static除了数据类型之外,还可以注释属性。

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

抽象类常量

除了使用数据类型键入属性之外,还可以在抽象类或接口中声明常量抽象。

interface I {
  abstract const int MY_CONST;
}

abstract class Y {
  abstract const int MY_CONST;
}

局部变量

您不要键入注释局部变量。它们由类型检测器自动推断


以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号