zoukankan      html  css  js  c++  java
  • Typescript 中类的继承

    Typescript中类的定义与继承与后端开发语言java/C#等非常像,实现起来非常方便,而且代码便于阅读。

    用Typescript写较大项目时是非常有优势的。

    /**
     * BaseClass
     */
    class BaseClass {
        constructor(name:string,age:number) {
            this.name=name;
            this.age=age;
        }
        
        name:string;
        age:number;
        
        sayName():void{
            console.log(this.name);
        }
    }
    
    /**
     * SubClass
     */
    class SubClass extends BaseClass {
        constructor(name:string,age:number,job:string    ) {
            super(name,age);
            this.job=job;
        }
        job:string;
        
        sayJob():void{
            console.log(this.job);
        }
        
    }
    
    var subClass=new SubClass('张三',18,'Coder');
    subClass.sayJob();
    subClass.sayName();
    console.log(subClass);

    编译后生成的纯原生Javascript,也是非常优雅的。

    var __extends = (this && this.__extends) || function (d, b) {
        for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p];
        function __() { this.constructor = d; }
        __.prototype = b.prototype;
        d.prototype = new __();
    };
    /**
     * BaseClass
     */
    var BaseClass = (function () {
        function BaseClass(name, age) {
            this.name = name;
            this.age = age;
        }
        BaseClass.prototype.sayName = function () {
            console.log(this.name);
        };
        return BaseClass;
    })();
    /**
     * SubClass
     */
    var SubClass = (function (_super) {
        __extends(SubClass, _super);
        function SubClass(name, age, job) {
            _super.call(this, name, age);
            this.job = job;
        }
        SubClass.prototype.sayJob = function () {
            console.log(this.job);
        };
        return SubClass;
    })(BaseClass);
    var subClass = new SubClass('张三', 18, 'Coder');
    subClass.sayJob();
    subClass.sayName();
    console.log(subClass);
  • 相关阅读:
    python-第05章-元组与购物车的程序练习
    python-第01章05章节-列表使用
    python-第01章04章节-python的数据类型和三元运算
    python-第03章-初识模块和解释pyc
    python-第01章02章节-密文,if else判断和while,for循环
    python-第01章01章节-用户输入以及字符串的介绍
    k8s- centos7.8搭建
    k8s-获取kuboardtoken
    k8s搭建
    nginx编译安装
  • 原文地址:https://www.cnblogs.com/rdst/p/4713348.html
Copyright © 2011-2022 走看看