如何在接口上使用访问限制器?

时间:2019-01-22 06:23:56

标签: typescript interface

当我尝试更改接口上的访问限制器时,打字稿发出错误。 “无法出现在类型成员中。” 我删除了接口上的访问限制器,然后实现了接口。 并尝试更改类的访问限制器。

interface car {
  private speed: number;
}

这不起作用。

  interface car {
      speed: number;
    }

这可行。

 class MyCar implements car {
      private speed: number;
    }

这不起作用。

class MyCar implements car {
  public speed: number;
}

这可行。

接口不能具有访问限制器? 要么 无法实现的接口在类上没有访问限制器?私人还是受保护?

1 个答案:

答案 0 :(得分:1)

访问修饰符在接口上无效。一个接口是关于一个类公开的公共成员的。私有成员是实现的详细信息,因此与类公开的公共接口无关。

此限制适用于其他现代OOP语言,C#和Java也不允许在接口上使用访问修饰符。