- 使用
throw
抛出异常,有以下常见异常类型:BoundsError
边界错误DomainError
定义域错误MethodError
方法错误OverflowError
溢出错误TypeError
类型错误
- 使用
try/catch
捕获异常
示例:
function see(x)
if x<0
throw(DomainError("Too small"))
elseif x>1000
throw(DomainError("Too big"))
end
println(x)
end
try
see(8)
see(-9)
catch i
if isa(i,DomainError)
print(i.val)
end
end
try-catch
结构中可以嵌入finally
,标注无论代码如何结束,都会运行finally
模块
io=open("a.txt","r")
try
something(io)
finally
close(io)
end