zoukankan      html  css  js  c++  java
  • TypeScript的类

    1.ts中定义类

    class Person{
      name:string;//属性 前面省略了public关键词
      constructor(name:string){//构造函数 实例化类的时候触发的方法
        this.name=name;
      }
      getName():string{
        return this.name;
      }
      setName(name:string):void{
        this.name=name;
      }
      run():void{
        alert(this.name);
      }
    }
    var p=new Person('张三');
    alert(p.getName());
    p.setName('李四');
    alert(p.getName());
    p.run()
    

      

    2.ts中实现继承 extends、super

    class Person{
      name:string;
      constructor(name:string){
        this.name=name;
      }
      run():string{
        return `${this.name}在运动`
      }
    }
    class Web extends Person{
      constructor(name:string){
        super(name); /*初始化父类的构造函数*/
      }
    }
    var w=new Web('李四');
    w.run();
    

      

    3.类里面的修饰符:public、protected、private


    4.静态属性 静态方法

    class Person{
      public name:string;
      public age:number=20;
      static sex="男";//静态属性
      constructor(name:string) {
        this.name=name;
      }
      run(){/*实例方法*/
        alert(`${this.name}在运动`)
      }
      work(){
        alert(`${this.name}在工作`)
      }
      static print(){/*静态方法 里面没法直接调用类里面的属性*/
        alert('print方法'+Per.sex);
      }
    }
    Person.print();
    alert(Person.sex);
    

      

    5.多态:父类定义一个方法不去实现,让继承它的子类去实现
      每一个子类有不同的表现,多态属于继承


    6.抽象类
      它是提供其他类继承的基类,不能直接被实例化。
      用abstract关键字定义抽象类和抽象方法,抽象类中的抽象方法不包含具体实现并且必须在派生类中实现。
      abstract抽象方法只能放在抽象类里面。
      抽象类和抽象方法用来定义标准。

  • 相关阅读:
    期权波动率模型及交易策略分析
    k阶原点距和k阶中心距各是说明什么数字特征
    在Linux中监视IO性能
    NUMA微架构
    Web网站的几个QPS
    Elasticsearch与Solr 选型
    相关连接(后续更新)
    linux_基本命令使用(后续更新)
    centos7.5安装kafka(支持外部连接)
    centos7.5单机安装安装zookeeper
  • 原文地址:https://www.cnblogs.com/heweiquan/p/11380708.html
Copyright © 2011-2022 走看看