zoukankan      html  css  js  c++  java
  • TypeScript 抽象类

    类属性只能读不能写的两种方式
    class Person {
      constructor(public name:string){}
    }
    
    const person = new Person('zina');
    person.name = 'hello'; // 这里可以修改 name
    console.log(person.name);
    
    // 现在我只想让它读,不想让它写怎么弄,一种是利用 Getter Setter
    class Person1 {
      constructor(private _name:string){}
      get name(){
        return this._name
      }
    }
    const person1 = new Person1('zina');
    console.log(person1.name);
    
    
    // 还有一种方式 readonlay
    class Person2 {
      constructor(public readonly name:string){}
    }
    const person2 = new Person2('zina');
    console.log(person2.name);



    抽象类

    // 像这些图形类,都有获取面积的方法,这个时候就可以抽出来一个抽象类
    abstract class Geom {
      /**
      * 在 getArea 前面加一个 abstract,说明这个类是抽象的
      * 因为圆形,矩形,三角形的面积求解方式都不一样,它们都有去求面积的方法
      * 但是实现方式不一样,就是你也不知道怎么实现
      * 这样就是一个抽象方法
      */
      abstract getArea(): number;
    }
    /**
    * 抽象类只能被继承,不能被实例化,比如 new Geom,
    * 如果是抽象类,子类必须自己实现一下
    */
    class Circle extends Geom{
      getArea(){
        return 123
      }
    }
    class Square{}
    class Triangle{}
  • 相关阅读:
    Crontab '2>&1 &' 含义
    form提交方式Methor
    oracle基本术语
    在工作中常用的sql语句
    常用的删除大数据方法(游标+分段)
    oracle9i、10g、11g区别
    SSH面试总结(Hibernage面试)
    实习生招聘笔试
    TopCoder上一道600分滴题
    Oracle数据库面试题汇总
  • 原文地址:https://www.cnblogs.com/wzndkj/p/13047565.html
Copyright © 2011-2022 走看看