你好,游客 登录
背景:
阅读新闻

Scala面试题:Scala类型系统中Nil, Null, None, Nothing四个类型的区别?

[日期:2018-09-15] 来源:csdn  作者:IIGEOywq [字体: ]

先看一幅Scala类型图


scala类型图.png

Null是一个trait(特质),是所以引用类型AnyRef的一个子类型,null是Null唯一的实例。
Nothing也是一个trait(特质),是所有类型Any(包括值类型和引用类型)的子类型,它不在有子类型,它也没有实例,实际上为了一个方法抛出异常,通常会设置一个默认返回类型。
Nil代表一个List空类型,等同List[Nothing]
None是Option monad的空标识(深入了解请参考问题Q11)



作者:IIGEOywq
链接:https://www.jianshu.com/p/ace2bb24dc11
來源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。
收藏 推荐 打印 | 阅读: