闲话Dart精髓语法6--泛型篇

闲话Dart精髓语法5--类与对象篇 - 简书

Dart Logo

好了, 各位小伙伴们, 不知不觉我们已进入到第6篇. 这篇里我们一起来看一下Dart里的泛型. 

好了, 分隔线后我们进入正题. 


Generics:

    a. Using collection literals.用<>来标注类型. 都是一样一样的.

    b. 泛型集合和所含的type. 重要的事情戳三遍!!! 这个非常要意思, 在Dart中, 泛型是reified. 这个和Kotlin是一样的. 但是Java就不一样了. Java是erasure的. 区别是什么呢? 在Dart里, 泛型是runtime的. 就是说我们在runtime的时候, 泛型是跟着list携带的. 而Java则不同, 在runtime时, list仍然是list, 然而所携带的泛型却被擦除了. 举例如下, Dart可以用以下的方法来查list是不是List<String>, 而Java则不可以. 因此Java并不能调用Kotlin的inline-reified. 额, 扯远了.

    c. 限定泛型. 我们在define一个泛型的时候, 可以限定这个泛型继承于某一个类型.


好了, 今天就到这里了. 与Java相比, Dart里的泛型使用并没有太大的区别. 关键是注意List可以在runtime携带type. 

下一篇就是我们这个系列的最后一篇了. 

欧了, 谢谢观赏, 大家加油!

闲话Dart精髓语法7--其他篇 - 简书

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容