私有方法不能被子类覆盖_TypeScript 入门 4 – 类

807613755fbf5b1b44f7a8844eed5940.png

TypeScript 类的属性修饰符

  1. public(默认) : 公共的,任何地方都可以访问, 自己, 子类,外部类
  2. private : 私有的,只能自己访问 自己;即使子类也无法访问
  3. protected : 受保护的, 子类可以访问;即使实例也无法访问
  4. readonly : 设置为只读,只读属性只有在声明时或构造函数里才可以被初始化
class Octpus{
    readonly name:string;
    readonly numberOfLines:number = 124;

    constructor(){
        this.name = 'gavin';
    }
}

5.static: 静态属性,描述静态成员,直接通过类名.属性名来访问

class Octpus{
    static privateName = "123";
    static getName():string{
        return Octpus.privateName;
    }
}
console.log(Octpus.privateName);

抽象类

  1. 抽象类用于定义抽象类和其中的抽象方法
  2. 抽象类是不允许被实例化的
  3. 抽象方法必须被子类实现
abstract class Animal {
    private name: string;

    public constructor(name: string) {
        this.name = name;
    }

    public setName(name: string): void {
        this.name = name;
    }

    public abstract sayHi(): void;
}

class Cat extends Animal {
    sayHi(): void {
        console.log('wa hahah ');
    }
}

类继承

通过extends关键字,类从基类继承了属性和方法。派生类被称为子类,基类被称为超类;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值