1. public/private/protected
class Persons{ /* 1. 使用private修饰的变量在类外部是不可读取的 */ private name:string = "lisi"; public age :number = 20; sayName(){ console.log(this.name); } sayAge(){ console.log(this.age); }}var p:Persons = new Persons();// console.log(p)// console.log(p.name);// console.log(p.age);p.age = 30;// console.log(p);p.sayName();p.sayAge();
|
类 |
外部 |
子类 |
| public |
√ |
√ |
|
| private |
√ |
× |
√ |
| protected |
√ |
× |
× |
class Students{
protected name:string = "lisi";
sayName(){
console.log(this.name);
}
}
/*
protected和private的区别:
在子类中
protected是可以访问的
private是不可访问的
*/
class MidStudent extends Students{
getName(){
console.log(this.name);
}
}var m:MidStudent = new MidStudent();
m.getName()