假设代码中三者均存在
try块中运行到结束语句前(throw、return),如果没有退出系统(system.exit(1)),便会转跳到finally块,在finally块运行结束后再继续执行try中的结束语句
因此,如果try中结束语句是throw,那么catch块将会在finally块结束之后运行
特别注意,如果finally块不是正常运行完毕,而包含结束语句(throw、return),那么try中的结束语句将得不到运行,因此,要避免在finally块中包含结束语句
假设代码中三者均存在
try块中运行到结束语句前(throw、return),如果没有退出系统(system.exit(1)),便会转跳到finally块,在finally块运行结束后再继续执行try中的结束语句
因此,如果try中结束语句是throw,那么catch块将会在finally块结束之后运行
特别注意,如果finally块不是正常运行完毕,而包含结束语句(throw、return),那么try中的结束语句将得不到运行,因此,要避免在finally块中包含结束语句