1. public private protected
外部 子类
private 可以访问 可以访问 不可访问
public 可以访问 不可访问 不可访问
private 可以访问 不可访问 可以访问
  1. class Person{
  2. // 使用private修饰的变量在类外部是不可读取的
  3. private name:string = "lisi";
  4. public age:number = 20;
  5. }
  6. var p:Person= new Person();
  7. console.log(p);
  8. console.log(p.age);
  9. p.age = 30;
  10. console.log(p);
  1. protected 修饰的变量在类外部不能访问
  2. class Student{
  3. protected name:string = "lisi"
  4. sayName(){
  5. console.log(this.name);
  6. }
  7. }
  8. var s:Student = new Student();
  9. // console.log(s.name);

private protected区别

  1. protected在子类中protected可以访问,private不可访问
  1. class Student{
  2. protected name:string = "lisi"
  3. sayName(){
  4. console.log(this.name);
  5. }
  6. }
  7. class MidStudent extends Student{
  8. getName(){
  9. console.log(this.name);
  10. }
  11. }
  12. var m:MidStudent = new MidStudent();
  13. m.getName();