当前位置:  开发笔记 > 编程语言 > 正文

打字稿:使用private,public和nothing声明类变量之间的区别

如何解决《打字稿:使用private,public和nothing声明类变量之间的区别》经验,为你挑选了1个好方法。

有什么区别:

A.
class foo {
  bar: string;
}

B.
class foo {
  private bar: string;
}

C.
class foo {
  public bar: string;
}

显然,我可以使用以下方法在所有三种情况下访问"bar":

var temp = new foo();
temp.bar = 'abc';

Ryan Cavanau.. 5

bar: string是100%相当于public bar: string.默认的辅助功能修饰符是public.

private只是编译时隐私; 没有运行时强制执行此操作,无论访问修饰符如何,发出的代码都是相同的.尝试从类外部访问属性时,您会看到TypeScript中的错误.

您也可以说protected,private除了派生类也可以访问该成员之外.同样,这里发出的JavaScript没有区别.



1> Ryan Cavanau..:

bar: string是100%相当于public bar: string.默认的辅助功能修饰符是public.

private只是编译时隐私; 没有运行时强制执行此操作,无论访问修饰符如何,发出的代码都是相同的.尝试从类外部访问属性时,您会看到TypeScript中的错误.

您也可以说protected,private除了派生类也可以访问该成员之外.同样,这里发出的JavaScript没有区别.

推荐阅读
手机用户2502852037
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有