美文网首页
Dart基础(六)泛型、import 关键字

Dart基础(六)泛型、import 关键字

作者: 徘徊0_ | 来源:发表于2020-03-25 15:08 被阅读0次

    泛型:解决 类、接口、方法的复用性和不特定数据类型的校验

    一、泛型方法

    void main(){
    
      //在这里指定泛型类型String,后面参数只可以传入 String类型。
      var  v1=getInfo<String>('This is String Type');
    
      print(v1);
    }
    
    //这里的<T>,用于指定泛型类型;
    T getInfo<T>(T value){
    
      return value;
    }
    

    二、泛型类

    比如经常用的 List 就是一个泛型类,声明List泛型为String,此时只能添加String类型的数据:

      List<String> stringList=new List<String>();
    
    image.png

    也可以自定义一个泛型类:

    //自定义一个泛型类
    class Person<E>{
      E e;
      void printInfo<E>(E e) {
        print('泛型类:$e');
      }
    }
    

    三、泛型接口

    因为在Dart中泛型接口的写法就是抽象类,所以泛型接口的写法跟泛型类类似。

    //泛型接口
    abstract class Cache<T>{
      getData(T data);
      
      void setData(T data);
    }
    

    四、import 导库关键字

    • 需要隐藏一部分的时候,使用 hide 关键字
      import 'xxx' hide A 除了"xxx"中的A,其余都导入
    • 当名字出现冲突,使用 as 关键字
      import 'xxx' as B 将库重命名,当有名字冲突时
    • 只需要导入一部分的时候,使用 show 关键字
      import 'xxx' show A,B 只导入A,B

    相关文章

      网友评论

          本文标题:Dart基础(六)泛型、import 关键字

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