2.12JavaScript语言的可见性(Visibility)

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

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

可以通过在成员标识符前添加 # 的方式来声明 private 成员,# 也是标识符的一部分,所以操作 private 成员时必须带上 #

目前,JavaScript 语言不支持 #constructor() 私有构造函数语法。

成员可见性类自身内部继承外部调用(类调用或对象调用)
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日

相关推荐

  • 1.6JavaScript语言的常量(Constant)

    1.常量声明 常量在赋值后不可以通过重新赋值改变其值,然而,对象被赋值给常量后,改变对象的属性是可以的。 2.常量分类 2.1全局常量 名称 修饰符 全局常量 —————— 2.2成员常量 名称 修饰符 类常量 —————— 2.3局部常量 名称 修饰符 局部常量 ——————

  • 2.9JavaScript引用类型之生成器(Generator)

    生成器对象也实现了 Iterable 接口。 1.生成器函数声明 定义生成器函数只需要在普通函数名称前面加一个星号(*),只要是可以定义函数的地方(不支持箭头函数),就可以定义生成器。 标识生成器函数的星号不受两侧空格的影响。 2.async生成器函数声明 3.yield yield 关键字用来多次暂停和恢复…

  • 1.1JavaScript语言的注释(Comment)

    1.行(Line)注释 行注释使同一行中紧跟 // 后的所有文本都成为注释。 2.块(Block)注释 块注释使 /* 和 */ 之间的无论是单行还是多行的所有文本都成为注释。 3.Hashbang注释 Hashbang 注释用于当 JavaScript 脚本文件直接在 shell 中运行时以指定 JavaScript…

发表回复

登录后才能评论