继承关系图
每个类都继承自Any类,它有两个子类AnyVal和AnyRef,AnyVal是所有值类的父类,AnyRef是所有引用类的父类。
底类型(botton types)
在上图中类继承关系的底部,有两个特殊的类Null和Nothing,它们用于处理一些特殊情况。
Null类是null引用的类型。
Nothing类主要用途是给出非正常终止的信号,例如Scala中内置的error方法:
1 | def error(message: String): Nothing = throw new RuntimeException(message) |
由于Nothing是所有其他类型的子类型,那么该方法可以用来:
1 | def divide(x: Int, y: Int): Int = |