Hacklang教程——这种类型的扩展类



黑客教程练习16正确答案是什么?
教程链接:Hacklang教程

我修改的代码(未标记为解决方案):

<?hh
// The type 'this' always points to the most derived type
class MyBaseClass {
  protected int $count = 0;
  public function add1(): this {
    $this->count += 1;
    return $this;
  }
}
class MyDerivedClass extends MyBaseClass {
  public function print_count(): void { echo $this->count; }
}
function test(): void {
  $x = new MyDerivedClass();
  $x->add1()->print_count();
}

我将MyBaseClass替换为this,但仍未标记为正确(绿色文本与练习编号)。正确答案是什么?

我是Hack的工程师。我很确定我们在本教程的完成检测逻辑中有一个错误。你的代码在我看来是正确的——将返回类型更改为this是,据我所见,你应该做的一切。我会跟进并修复这个bug。很抱歉!

最新更新