TypeScript 构造函数及访问控制

TypeScript 构造函数

在 TypeScript 中可以通过 constructor 函数来实现构造函数 :

class Animal{
    name:string;
    constructor(name:string){
        this.name = name;
    }
    eat():void{
        console.log(this.name + 'eat...');
    }
}
let cat = new Animal("狗");
cat.eat();

访问控制修饰符

TypeScript 中,可以使用访问控制符来保护对类、变量、方法和构造方法的访问。

TypeScript 支持 3 种不同的访问权限 :

public(默认) : 公有,可以在任何地方被访问。
protected : 受保护,可以被其自身以及其子类访问。
private : 私有,只能被其定义所在的类访问。

示例 :

class Animal{
    name:string;
    private age : number;
    constructor(name:string, age:number){
        this.name = name;
        this.age
    }
    eat():void{
        console.log(this.name + 'eat...');
    }
}
let cat = new Animal("狗", 10);
cat.eat();
console.log(cat.age); // 报错: age 为私有变量