我不能使接口私有实现类字段,也不能使接口字段私有

问题描述 投票:0回答:1

我在界面上有这个字段:

// Stores the to views folder
VIEW_PATH: string;
// Stores BrowserWindows with respective view  
browserWindows: [string, BrowserWindow | null][];

当我在我的类上实现字段,并尝试将它们设置为私有时,我收到此错误:

Class 'WindowHandler' incorrectly implements interface 'IWindowHandler'.
  Property 'VIEW_PATH' is private in type 'WindowHandler' but not in type 'IWindowHandler'.ts(2420)

当我尝试将接口字段设置为私有时:

'private' modifier cannot appear on a type member.ts(1070)
typescript
1个回答
1
投票

接口本质上是公共的,因此只能有公共成员,因此它们不接受私有/受保护等定义。另一方面,接口(例如类)的实现可以具有用于其实现细节的私有成员/方法。

您可能要么误解了Interfaces的概念,这是您与公众世界之间的一种“契约”,因此在这些契约中没有合法使用“隐藏”元素,或者您试图在不正确的情况下使用它们办法。让我知道您的用例是什么以及为什么您希望某些成员保密,以便进一步帮助您。

© www.soinside.com 2019 - 2024. All rights reserved.