ty修饰符 public private static

Posted iwishicould

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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 是使用在实例化当中

以上是关于ty修饰符 public private static的主要内容,如果未能解决你的问题,请参考以下文章

private/默认/protected/public权限修饰符的区别

在 C# 中,public、private、protected 和没有访问修饰符有啥区别?

为啥定义接口的方法和属性前面没有修饰符(public、private、protected)? [复制]

Java的权限修饰符(public,protected,default,private)

public private protected 修饰符整理

iOS 实例变量修饰符