2.12JavaScript语言成员的可见性(Visibility)

成员的可见性只支持 publicprivate,不支持 protected

成员的可见性默认为 public,无需在成员标识符前显式添加。

可以紧挨着成员标识符前显式添加 # 来声明 private 成员。

注意:private 成员支持静态字段、静态访问器属性、静态方法、实例字段、实例访问器属性、实例方法,不支持静态初始化块、构造函数。

注意:# 也是成员标识符的一部分,所以操作 private 成员时必须带上 #

成员的可见性类自身内部继承外部调用(类调用或对象调用)
public可以可以可以
private可以不可以不可以

1.字段

class ClassWithPrivate {

  //private静态字段
  static #privateStaticField;
  static #privateStaticFieldWithInitializer = 36;

  //private实例字段
  #privateInstanceField;
  #privateInstanceFieldWithInitializer = 36;

}

2.方法

class ClassWithPrivate {

  //private静态方法
  static #privateStaticMethod() {
    //方法体
  }
  
  //private静态getter
  static get #privateStaticGetter() {
    //访问器属性体  
  }  
  
  //private静态setter
  static set #privateStaticSetter(形参) {
    //访问器属性体  
  }

  //private实例方法
  #privateInstanceMethod() {
    //方法体
  }

  //private实例getter
  get #privateInstanceGetter() {
    //访问器属性体 
  }  
  
  //private实例setter
  set #privateInstanceSetter(形参) {
    //访问器属性体
  }

}

原创文章,作者:huoxiaoqiang,如若转载,请注明出处:https://www.huoxiaoqiang.com/javascript/javascriptlang/21258.html

(0)
huoxiaoqiang的头像huoxiaoqiang
上一篇 2020年9月11日
下一篇 2020年9月12日

相关推荐

  • 3.TypeScript常用语法一览表

    1.JSDoc注释 2.非运算符 非运算符 描述 标识符? 用于函数的形参名、对象类型的属性名后面,表示是可选的(可传递实参,也可不传递实参,当不传递实参的时候,相当于传递了 undefined 值)。 3.类型 3.1常用类型 类型 描述 bigint 大整数类型 number 数值类型 boolean 布尔类型 s…

  • 1.8JavaScript语言的语句(Statement)

    1.空(Empty)语句 空语句只使用一个分号 ; 表示,表示不提供任何语句。与空语句相反的是块语句。 比如,以下的例子将 for 循环语句后的 {} 替换为 ;。 2.块(Block)语句 块(Block)语句又被称为代码块(Code Block)语句。 块语句由一对花括号 {} 组成,花括号内部包括零条或多条语句。…

  • 1.3JavaScript语言的非运算符(Non-Operator)和运算符(Operator)

    1.非运算符 非运算符 描述 空白 空格(U+0020)、水平制表符(\t,U+0009)、垂直制表符(\v,U+000B)、分页符(\f,U+000C)。 行结束符 换行符(\n,U+000A)、回车符(\r,U+000D)、行分隔符(U+2028)、段落分隔符(U+2029)。 , 逗号 ; 分号 () 圆括号 […

发表回复

登录后才能评论