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{}
  • 相关阅读:
    js精度丢失问题处理
    button居中
    js存储 cookie,localStorage,sessionStorage的比较
    js 常用的DOM,BOM操作
    js事件代理理解
    oneplus前端开发面试
    instanceof
    js原型和原型链
    js构造函数
    NC 6.X笔记(编辑中)
  • 原文地址:https://www.cnblogs.com/wzndkj/p/13047565.html
Copyright © 2011-2022 走看看