成员的可见性只支持 public
和 private
,不支持 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