首页 > 其他分享 >TypeScript抽象类

TypeScript抽象类

时间:2022-11-27 11:34:44浏览次数:46  
标签:TypeScript abstract sayHello 抽象 抽象类 方法 class

抽象类(abstract class)

  • 抽象类是专门用来被其他类所继承的类,它只能被其他类所继承不能用来创建实例

  • 使用abstract开头的方法叫做抽象方法,抽象方法没有方法体只能定义在抽象类中,继承抽象类时抽象方法必须要实现

示例:

(function () {

    /*
    *   以abstract开头的类是抽象类,
    *       抽象类和其他类区别不大,只是不能用来创建对象
    *       抽象类就是专门用来被继承的类
    *
    *       抽象类中可以添加抽象方法
    * */
    abstract class Animal {
        name: string;

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

        // 定义一个抽象方法
        // 抽象方法使用 abstract开头,没有方法体
        // 抽象方法只能定义在抽象类中,子类必须对抽象方法进行重写
        abstract sayHello():void;
    }

    class Dog extends Animal{

        sayHello() {
            console.log('汪汪汪汪!');
        }

    }

    class Cat extends Animal{
        sayHello() {
            console.log('喵喵喵喵!');
        }

    }

    const dog = new Dog('旺财');
    dog.sayHello();

})();

 

标签:TypeScript,abstract,sayHello,抽象,抽象类,方法,class
From: https://www.cnblogs.com/anjingdian/p/16929332.html

相关文章

  • TypeScript之super
     示例ts文件:(function(){classAnimal{name:string;constructor(name:string){this.name=name;}sa......
  • TypeScript继承
    继承  * -使用继承后,子类将会拥有父类所有的方法和属性  * -通过继承可以将多个类中共有的代码写在一个父类中,  *   这样只需要写一次即可......
  • TypeScript 高级类型
    TypeScript高级类型class类类型兼容性交叉类型泛型和keyof索引签名类型和索引查询类型映射类型class类classPerson{  age:number//......
  • TypeScript之构造函数和this
     示例:classDog{name:string;age:number;//constructor被称为构造函数//构造函数会在对象创建时调用constructor(name:string,age:......
  • TypeScript之类
    TypeScript中的类的定义与使用示例//使用class关键字来定义一个类/**对象中主要包含了两个部分:*属性*方法**/classPerson{/**......
  • TypeScript/Javascript 泛型字典
    typescript是javaScript的超集,相当于把弱类型的js变成了强类型的语言,并且实现了封装(成员私有),更方便面向对象编程。然鹅,typescript并没有扩增原生JS的内容,比如:支持了import......
  • TypeScript学习笔记-05webpack打包
    1.使用命令npminit-y生成项目package.json,这个文件是项目的基本信息,方便我们对项目进行管理,如图所示。2.使用命令 npmi-Dwebpackwebpack-clitypescriptts-load......
  • [Typescript] 118. Hard - IsRequiredKey
    Implementageneric IsRequiredKey<T,K> thatreturnwhether K arerequiredkeysof T .ForexampletypeA=IsRequiredKey<{a:number,b?:string},'a'>......
  • [Typescript] 117. Hard - ClassPublicKeys
    Implementthegeneric ClassPublicKeys<T> whichreturnsallpublickeysofaclass.Forexample:classA{publicstr:stringprotectednum:numberpri......
  • TypeScript学习笔记-04 tsconfig.json配置文件
    tsconfig.json一般常用的配置如下所示,可以按需要进行配置。{/*tsconfig.json是ts编译器的配置文件,ts编译器可以根据他的信息来对代码进行编译//in......