修饰符 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 是使用在实例化当中