博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Typescript---03 类、接口、枚举
阅读量:5920 次
发布时间:2019-06-19

本文共 1156 字,大约阅读时间需要 3 分钟。

传统的javascript程序使用函数和基于原型的继承来创建可重用的组件,从ECMAScript2015(ECMAScript 6)开始,可以使用基于类的面向对象方式。

一、类:

  定义类(class)

class Person{  name: string;  constructor(name:string){     this.name = name; }  }let stu = new Person("张三");

  继承类(extends)

class Student extends Person{  readBook(){   console.log( this.name + "is reading");  }}

  访问修饰符

  默认为public

  private 私有,只有内部可以访问

  protected,内部和派生类可以访问

  readonly 只读,必须在声明时或构造函数里被初始化

  static 静态属性,可以直接通过类名访问

  存取器get/set,如果只有get不带有set的存取器被推断为readonly

  抽象类

  abstract 定义抽象类以及定义抽象类的抽象方法。 不同于接口,抽象类里可以包含成员的实现。抽象类不会直接被示例化

二、接口

  定义接口 

interface MainService {    context: string}

  可选属性,可选属性就是在属性名后加? 符号

interface MainService {    context: string;    name?:string;//可选属性  }

  只读属性,只在对象刚创建的时候修改值

interface MainService {    context: string;    name?:string;//可选属性    readonly gender: string;// 只读属性    }

  实现接口

class Main implements MainService{  current: Date;  }

三、类与接口

  1)类可以实现接口

  2)接口继承接口

  3)接口继承类

四、枚举

  数字枚举

enum Direction {    Up = 1,    Down,    Left,    Right}

  字符串枚举

enum Direction {    Up = "UP",    Down = "DOWN",    Left = "LEFT",    Right = "RIGHT",}

  

  

 

转载于:https://www.cnblogs.com/kingkangstudy/p/10383938.html

你可能感兴趣的文章
storm容易混淆的继承对象的对比IRichBolt/IBasicBolt
查看>>
12--外包管理、需求管理、项目组合和大型项目管理
查看>>
如何选择一个好的网站空间?
查看>>
Open Geospatial Consortium(OGC)成立点云领域工作组
查看>>
CISCO路由利用policy-map进行限速
查看>>
我的友情链接
查看>>
LinuxKit的Kubernetes定制操作系统
查看>>
在WordPress的Feed中插入广告
查看>>
ubuntu下vsftpd虚拟用户配置
查看>>
我的友情链接
查看>>
C++ 实现 Date类(简单的日期计算器)
查看>>
docker基础实战
查看>>
FineReport中如何制作树数据集来实现组织树报表
查看>>
nginx日志监控模块
查看>>
查看linux服务器应用的线程cpu使用率
查看>>
OC高效率52之使用“class-continuation分类”隐藏实现细节
查看>>
C++继承与派生
查看>>
winhex使用经验 1
查看>>
swiper的基础使用(十)
查看>>
图形分析wireshark+抓包tcpdump
查看>>