本月博客排行
-
第1名
kaizi1992 -
第2名
arpenker -
第3名
wy_19921005 - hanbaohong
- jh108020
年度博客排行
-
第1名
龙儿筝 -
第2名
宏天软件 -
第3名
青否云后端云 - vipbooks
- wy_19921005
- benladeng5225
- fantaxy025025
- e_e
- kaizi1992
- tanling8334
- arpenker
- sam123456gz
- javashop
- zysnba
- xiangjie88
- lemonhandsome
- wallimn
- ganxueyun
- Xeden
- xyuma
- zhanjia
- wangchen.ily
- jh108020
- johnsmith9th
- zxq_2017
- jbosscn
- forestqqqq
- daizj
- ajinn
- xpenxpen
- 喧嚣求静
- ranbuijj
- kingwell.leng
- silverend
- kristy_yy
- lchb139128
- jveqi
- lich0079
- lzyfn123
- java-007
- sunj
- yeluowuhen
- lerf
- xiaoxinye
- flashsing123
- lxguy
- zhangjijun
- bosschen
- lyndon.lin
- sunnylocus
最新文章列表
在 Kotlin 中“实现”trait/类型类
本文也发在我的个人博客上:https://hltj.me/kotlin/2020/01/11/kotlin-trait-typeclass.html 。
trait 与类型类都是什么
trait 与类型类(type class)分别是 Rust 与 Haskell 语言中的概念,用于特设多态(ad-hoc polymorphism)、函数式编程等方面。
值得一提的是虽然英文都是“tra ...
Module与Trait的比较
最近我多次提及module和trait。
粗看,我们可以发现它们有一定的相似处。两者其实都是为了组织代码单元,并在代码上施加更多的约束,且约束的方式有点类似。
目前典型的module是定义require和exports,即需要哪些包(所提供的类和函数),和输出哪些类和函数。
而trait是定义一组方法,并声明这些方法所依赖的方法(即require某些方法)。比如 IterationTrait ...