根据scala规范,
scala.Nothing type - 所有类型的按钮。
类型“Nothing”存在,但 Nothing 的实例不存在。
怎么运行的:
def ??? : Nothing = throw new NoImplementedError
def sys.error(message: String): Nothing = throw new RuntimeException()
def sys.exit(status: Int): Nothing = {...}
但事实上,所有提到的方法都会返回异常。例外def sys.exit
您能否详细说明一下 Nothing 类型。任何例子,解释。
Thanks!
def ??? : Nothing = throw new NoImplementedError
不返回异常,它抛出一个不是同一件事的异常。异常是一种控制流机制,它导致控制立即跳转到调用堆栈中最近安装的处理程序。这意味着在
val x = ???
x
永远不会被赋值,所以x
可以有任何类型。这种类型是Nothing
在 scala 类型系统中,它是所有类型的子类型。
非终止也没有任何类型,因为它也从不返回值,例如
def loop(): Nothing = loop()
val x: Int = loop()
因此是允许的,因为x
永远不会被分配。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)