Java基础复习(七)
2021/8/8 22:06:20
本文主要是介绍Java基础复习(七),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
异常
- 检测性异常:用户错误或问题引起的异常,这些异常在编译时不能被忽略
- 运行时异常:可以被程序员避免的异常,在编译时可以被忽略
- 错误ERROE:错误不是异常,而是脱离程序员控制的问题,在代码中通常被忽略
Error和Exception的区别:Error通常是灾难性的致命的错误,jvm会选择终止线程;Exception通常是可以被程序处理的。
package Jc; public class A { public static void main(String[] args) { int a = 1, b = 0; //假设捕获多个异常:从小到大! try { //监控区域 System.out.println(a / b); } catch (Error e) { //catch(想要捕获的异常类型) 捕获异常 System.out.println("Error"); } catch (Exception e) { System.out.println("Exception"); } catch (Throwable t) { System.out.println("Throwable"); } finally { //处理善后共工作 System.out.println("finally"); } //finally try-catch-finally(可以不要finally,假设IO,资源,关闭) } //ctrl+alt+t:快捷键生产try-catch-finally }
throw制造异常,throws抛出异常
package Jc; public class A { public static void main(String[] args) { try { new A().test(1,0); }catch (ArithmeticException e){ e.printStackTrace(); } } public void test(int a,int b) throws ArithmeticException{ if(b==0){ throw new ArithmeticException(); //主动抛出异常,一般在方法中使用 } } }
自定义异常
package Jc; class MyException extends Exception{ private int detail; public MyException(int a){ this.detail=a; } @Override public String toString(){ return "MyException{"+detail+'}'; } } public class A { static void test(int a) throws MyException{ System.out.println("传递的参数为:"+a); if(a>10){ throw new MyException(a); } System.out.println("OK"); } public static void main(String[] args) { try{ test(11); }catch(MyException e){ System.out.println("MyException=>"+e); } } }
实际应用总结
- 处理运行时异常,采用逻辑去合理规避同时辅助try-catch处理
- 在多重catch块后面,可以加catch(Exception)来处理可能被遗漏的异常
- 对于不确定的代码,也可以加上try-catch,处理潜在的异常
- 尽量去处理异常,切记只是简单的调用printStackTrace()去打印输出
- 尽量添加finally语句块去释放占用的资源
这篇关于Java基础复习(七)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-27本地多文件上传的简单教程
- 2024-11-27低代码开发:初学者的简单教程
- 2024-11-27如何轻松掌握拖动排序功能
- 2024-11-27JWT入门教程:从零开始理解与实现
- 2024-11-27安能物流 All in TiDB 背后的故事与成果
- 2024-11-27低代码开发入门教程:轻松上手指南
- 2024-11-27如何轻松入门低代码应用开发
- 2024-11-27ESLint开发入门教程:从零开始使用ESLint
- 2024-11-27Npm 发布和配置入门指南
- 2024-11-27低代码应用课程:新手入门指南