zoukankan      html  css  js  c++  java
  • Typescript中的可索引接口 类类型接口

    /*
    
    
    5、typeScript中的接口
    
        可索引接口
         类类型接口
    
    
       
    */
    
    
    /*
    接口的作用:在面向对象的编程中,接口是一种规范的定义,它定义了行为和动作的规范,在程序设计里面,接口起到一种限制和规范的作用。接口定义了某一批类所需要遵守的规范,接口不关心这些类的内部状态数据,也不关心这些类里方法的实现细节,它只规定这批类里必须提供某些方法,提供这些方法的类就可以满足实际需要。 typescrip中的接口类似于java,同时还增加了更灵活的接口类型,包括属性、函数、可索引和类等。
    
    定义标准。
    
    */
    
    
    // 可索引接口:数组、对象的约束  (不常用)
    
    
    
        //ts定义数组的方式
            /*
                var arr:number[]=[2342,235325]
    
    
                var arr1:Array<string>=['111','222']
            */
    
    
    
            //可索引接口 对数组的约束
                    // interface UserArr{
                    //     [index:number]:string
                    // }
    
    
                    // // var arr:UserArr=['aaa','bbb'];
    
                    // // console.log(arr[0]);
    
    
    
                    // var arr:UserArr=[123,'bbb'];  /*错误*/
    
                    // console.log(arr[0]);
    
    
            //可索引接口 对对象的约束
    
    
    
    
                    // interface UserObj{
    
                    //     [index:string]:string
                    // }
    
    
                    // var arr:UserObj={name:'张三'};
    
    
    
    
    
    
    //类类型接口:对类的约束  和   抽象类抽象有点相似    
    
    
        interface Animal{
            name:string;
            eat(str:string):void;
        }
    
        class Dog implements Animal{
    
            name:string;
            constructor(name:string){
    
                this.name=name;
    
            }
            eat(){
    
                console.log(this.name+'吃粮食')
            }
        }
    
    
        var d=new Dog('小黑');
        d.eat();
    
    
        class Cat implements Animal{
            name:string;
            constructor(name:string){
    
                this.name=name;
    
            }
            eat(food:string){
    
                console.log(this.name+'吃'+food);
            }
        }
    
        var c=new Cat('小花');
        c.eat('老鼠');
  • 相关阅读:
    c# mvc action 跳转方式
    where T : new() 的含义
    HTML5 Dataset data-属性
    EF6 教程
    C写的AES(ECB/PKCS5Padding)
    【转载】openwrt: Makefile 框架分析
    SCP 命令【转】
    HTTP协议详解(转载)
    bootstrap模板
    拖拽插件
  • 原文地址:https://www.cnblogs.com/loaderman/p/11040411.html
Copyright © 2011-2022 走看看