/*
finally块
finally块的使用前提是必须要存在try块才能使用;
System.exit(1); //退出jvm
finally块的代码在任意情况都执行,即使return和throw都以执行完毕,照样会执行finall块中的代码;
finally非常适合执行释放资源的工作,这样子可以保证资源在任何情况下都被执行:
try块的3中组合方式:
方式一:常用
try{可能出现异常的代码}catch{捕获的异常类型 变量){处理代码};
这种方式适合有异常要处理但是没有资源要释放的;
方式二:常用
try{可能出现异常的代码}catch{捕获的异常类型 变量){处理代码}finall{要释放资源的代码}
这种方式适合即有异常要处理,又要释放资源的代码;
方式三:不常用但合法
try{可能发生异常的代码}finall{释放资源的代码}
适合于内部抛出的是运行时异常,并且有资源要被释放的情况;
*/
class Dmeo5
{
public static void main(String[] args)
{
div(1,0);
}
public static void div(int a, int b)
{
try
{
if (b == 0)
{
System.exit(1); //退出jvm
}
int c = a/b;
System.out.println("c = "+c);
return;
}
catch (Exception e)
{
e.printStackTrace();
System.out.println("出错了");
}
finally
{
System.out.println("finally 执行了");
}
}
}