发生错误时发出信号. 此信号可以被 Try-Catch 语句捕获.
Throw Value
要抛出的值; 通常是一个 Error 对象. 例如:
throw ValueError("Parameter #1 invalid", -1, theBadParam)
所有类型的值都可以被抛出, 但是如果使用 Catch 而不指定一个类(或者使用 Try 而不使用 Catch 或 Finally), 它将只捕获 Error 类的实例.
当在 Catch 中执行时, 可以省略 Value 来重新抛出捕获的值(避免仅为此目的指定一个输出变量). 这甚至在嵌套的 Try-Finally 中也支持, 但在嵌套的 Try-Catch 中不支持. 带有 Throw
的行不需要被 Catch 语句的主体所包含; 它可以被调用的函数所使用.
如果表达式被括在括号中, 则 throw
后的空格或制表符是可选的 , 如 throw(Error())
所示.
一个抛出的值或运行时错误可以被 Try-Catch 捕获. 在这种情况下, 执行被转移到 catch 语句或 try 之后的下一个语句. 如果一个抛出的值没有被捕获, 会发生以下情况:
Error 对象, Try, Catch, Finally, OnError
请参阅 Try.