跟我一起学“仓颉”编程语言-异常处理练习题
·
一、练习题
1. 使用try表达式捕捉getOrThrows函数的异常。
package Study
main() {
let opt = Option<Int64>.None
try {
println(opt.getOrThrow())
} catch (e: Exception) {
println(e)
}
println(Option<Int64>.Some(18).getOrThrow())
}
2. 使用try-with-resources表达式关闭资源1和资源2的资源,其中资源2里组合了资源1,在外面也同时使用了资源1和资源2。
package Study
class ResourceClass1 <: Resource {
// 表示资源是否关闭的标记, 默认没关闭
var flag = false
public override func isClosed() {
return flag
}
public override func close() {
this.flag = true
println("关闭资源1")
}
public func show() {
println("使用资源1")
}
}
class ResourceClass2 <: Resource {
var flag = false
var resource: ResourceClass1 = ResourceClass1()
public override func isClosed() {
return flag
}
public override func close() {
resource.close()
println("在资源2里关闭资源1成功")
if (!this.flag) {
this.flag = true
println("关闭资源2")
}
}
public func show() {
resource.show()
println("使用资源2")
}
}
main() {
try (
resourse1 = ResourceClass1(),
resourse2 = ResourceClass2()
) {
resourse1.show()
resourse2.show()
}
}
二、小结
本章为大家详细的介绍了仓颉编程语言中异常处理练习题的内容,下一章,为大家带来文件操作的内容。最后,创作不易,如果大家觉得我的文章对学习仓颉服务端开发有帮助的话,就动动小手,点个免费的赞吧!收到的赞越多,我的创作动力也会越大哦,谢谢大家🌹🌹🌹!!!
昇腾计算产业是基于昇腾系列(HUAWEI Ascend)处理器和基础软件构建的全栈 AI计算基础设施、行业应用及服务,https://devpress.csdn.net/organization/setting/general/146749包括昇腾系列处理器、系列硬件、CANN、AI计算框架、应用使能、开发工具链、管理运维工具、行业应用及服务等全产业链
更多推荐

所有评论(0)