dart(三)--泛型、库的引用dart(三)--泛型、库的引用

2021-08-09 13:44:51 浏览数 (2)

泛型(dynamic)

代码语言:javascript复制
abstract class Cache<T> {
    T getByKey(String key);
    setBukey(String key, T value);
}

/*
    1,泛型也可以限制类型,T代表Cache或Cache的子类
*/
class Foo<T extends Cache> {
    
}

库的引用

代码语言:javascript复制
/*  基本引用*/
import 'dart:math';

/*
    若引用多个库中关键字、方法名、参数名重名了,使用as xx将库重命名
*/
import 'dart:math as m';
void main() {
    print(m.sqrt(2))
}

/*
    引用库后,可以使用hide、show来展示或隐藏对应的关键字、方法名、参数名
*/
import 'dart:math hide sqrt';
import 'dart:math show sqrt';

/*
    1,deferred修饰,延迟加载对应库
    2,在异步线程中加载库,然后再使用
    3,Future对象类型
*/
import 'dart:math deferred as m';
Future sqrt(num m) async {
    await m.loadLibrary();
    m.sqrt(2);
}

0 人点赞