ty修饰符 public private static

修饰符 public private

 当一个类的成员变量没有修饰的时候 ,外界是可以进行访问的, 默认的就是 public 进行修饰。
 private 属性只能够 在父类的内部直接 进行访问();

class Person{
    age:10
    private name = "张三" // private 属性只能够 在类的内部 进行访问;
    say() {
        console.log("我的名字是"+this.name)
    }
}
class Person {
age: 10;
private name = "张三"; // private 属性只能够 在类的内部 进行访问;
say() {
console.log("我的名字是" + this.name);
}
}

<!-- 继承父类 子类就可以访问父类中的属性和方法了 -->
<!-- 如果父类是 定义的私有属性或者方法的时候  就不可以进行访问了 -->

class Children extends Person {
  callPar() {
    super.say(); //super 可以调用父类中公开的的属性 方法
  }
}

var xm = new Children();
xm.say(); //我的名字是张三

protected 的使用

class Person {
  protected age: 10; //修饰的属性和方法 是受保护的,只能够在父类内部访问
  private name = "张三"; // private 属性只能够 在类的内部 进行访问;
  say() {
   console.log("我的名字是" + this.name);
  }
}

// 继承父类
class Children extends Person {
  callPar() {
   super.say(); //super 剋调用父类中的属性 方法
  }
  hello() {
    // 无法访问收保护的方法或者属性
    console.log("我今年" + super.age);
  }
}

var xm = new Children();
xm.callPar(); //我的名字是张三
xm.hello(); //报错 因为age只能够在父类内部访问哈

### 静态方法的使用
class Person {
  protected age: 10; //修饰的属性和方法 是受保护的,只能够在父类内部访问
  private name = "张三"; // private 属性只能够 在类的内部 进行访问;
  say() {
    console.log("我的名字是" + this.name);
  }
}

// 继承父类
class Children extends Person {
  static test() {
  // 无法访问收保护的方法或者属性
  console.log("我是静态方法");
  }
}
Children.test(); //静态方法 可以直接去调用 此时是不允许使用 this this 是使用在实例化当中
上一篇:es6默认传参 es5的默认传参


下一篇:js构造函数方式定义对象