美文网首页
8.泛型-类

8.泛型-类

作者: 我只会吃饭 | 来源:发表于2020-02-17 10:39 被阅读0次

泛型类

例如:number类型,假设定义一个类找出最大元素,并且传入参数及返回的值的类型必须一致

class MaxClass {

    // list:Array<number> = [];
    list:number[] = [];

    push(n:number) {
        this.list.push(n);
    }

    findMax():number {
        let max = this.list[0];
        for(let it of this.list) {
            if (max <= it) {
                max = it
            }
        }
        return max;
    }
}

let m = new MaxClass();
m.push(1);
m.push(3);
console.log(m.findMax());

定义成泛型类: 则可以支持多种类型

class MaxClass1<T> {
    list:T[] = [];

    add(n:T) {
        this.list.push(n);
    }

    findMax():T {
        let max = this.list[0];
        for(let it of this.list) {
            if (max <= it) {
                max = it
            }
        }
        return max;
    } 
}

let m1 = new MaxClass1<string>();
m1.add('a');
m1.add('y');
console.log(m1.findMax())

let m2 = new MaxClass1<number>();
m2.add(4);
m2.add(5);
console.log(m2.findMax())

使用类约束泛型类的参数


// 泛型类
// 公交
class Bus<T> {
    list:Array<T>
    constructor() {
        this.list = [];
    }

    up(f:T) {
        this.list.push(f);
    }
}

// 字符串
let strBus = new Bus<string>();
// 数值公交
let numBus = new Bus<number>();


// 我想传给类

// 乘客
class Fare {
    fname:string|undefined;
}

let fareBus = new Bus<Fare>();

let fare = new Fare();


fare.fname = 'kele'

// 这个乘客公交,只能上Fare的实例
fareBus.up(fare);
// fareBus.up('abs'); // 错误

相关文章

  • 8.泛型-类

    泛型类 例如:number类型,假设定义一个类找出最大元素,并且传入参数及返回的值的类型必须一致 定义成泛型类: ...

  • Java 19-5.1泛型

    泛型类定义泛型类可以规定传入对象 泛型类 和泛型方法 泛型接口 如果实现类也无法确定泛型 可以在继承类中确定泛型:

  • 【泛型】通配符与嵌套

    上一篇 【泛型】泛型的作用与定义 1 泛型分类 泛型可以分成泛型类、泛型方法和泛型接口 1.1 泛型类 一个泛型类...

  • 泛型

    关于泛型类,泛型方法,泛型接口泛型类:public class FanXingLeiDemo {//这里是泛...

  • 泛型

    1.什么是泛型? 2.为什么需要泛型? 3.泛型类、接口 泛型类注意事项: 从泛型类派生子类 泛型接口 泛型接口的...

  • 泛型的使用

    泛型有三种使用方式,分别为:泛型类、泛型接口、泛型方法 泛型类 泛型接口 泛型通配符 泛型方法 静态方法与...

  • Java 泛型

    泛型类 例如 泛型接口 例如 泛型通配符 泛型方法 类中的泛型方法 泛型方法与可变参数 静态方法与泛型 泛型上下边...

  • typescript入门-泛型

    基础定义 泛型接口 泛型类 泛型约束 使用类类型

  • Java泛型

    参考:Java知识点总结(Java泛型) 自定义泛型类 自定义泛型接口 非泛型类中定义泛型方法 继承泛型类 通配符...

  • 想理解泛型吗?看这一篇就够了!

    一、前言二、泛型类2.1 概述Java中泛型使用情况大致包括三种:泛型类、泛型接口、泛型方法 本节演示泛型类。 2...

网友评论

      本文标题:8.泛型-类

      本文链接:https://www.haomeiwen.com/subject/kddtfhtx.html