当前位置: 首页 > news >正文

专做美食的网站免费制作网站

专做美食的网站,免费制作网站,17网站一起做网店质量怎么样,公众号开发用什么技术异常机制 三种类型 检查型异常:程序员无法预见的运行时异常:在编译时会被忽略错误ERROR:错误在代码中被忽略,在编译时检查不到 异常处理机制 抛出异常捕获异常异常处理的五个关键字:try,catch&#xff…

异常机制

三种类型

  • 检查型异常:程序员无法预见的
  • 运行时异常:在编译时会被忽略
  • 错误ERROR:错误在代码中被忽略,在编译时检查不到

异常处理机制

  • 抛出异常
  • 捕获异常
  • 异常处理的五个关键字:try,catch,finally,throw,throws

以下为这五个关键词的使用方法:

package exception;public class Demo02 {public static void main(String[] args) {//假设要捕获多个异常:从小到大去写try {new Demo02().a();}catch (Error e){//catch(想要捕获的异常类型) 捕获异常System.out.println("ERROR");}catch (Exception e){System.out.println("EXCEPTION");}catch (Throwable e){System.out.println("THROWABLE");}finally {System.out.println("finally");}}public void a() {b();}public void b() {a();}
}
package exception;import org.w3c.dom.ls.LSOutput;public class Demo03 {public static void main(String[] args) {int a=1;int b=0;try {System.out.println(a/b);} catch (Exception e) {throw new RuntimeException(e);} finally {}}}
package exception;public class Demo01 {public static void main(String[] args) {new Demo01().test(1,0);}//假设这方法中,处理不了这个异常,方法上抛出异常用throwspublic void  test(int a,int b) throws ArithmeticException {if(b==0){throw new ArithmeticException();}System.out.println(a/b);}}
/*int a=1;int b=0;try{//try监控区域if(b==0){//throw  throws用于方法throw new ArithmeticException();//主动抛出异常}System.out.println(a/b);}catch (ArithmeticException e){System.out.println("程序出现异常,变量b不能为0");} finally {//善后工作System.out.println("finally");}//finally 可以不要finally*/

自定义异常

步骤:

  • 创建自定义异常类
  • 在方法中通过throw关键字来抛出异常对象
  • 如果当前抛出异常的方法中处理异常,可以使用try-catch语句捕获并处理;否则在方法的声明处通过throws关键字指明要抛出给方法调用者的异常,继续进行下一步操作
  • 在出现异常方法的调用者中捕获并处理异常
package exception;
//自定义异常
public class MyException extends Exception{//传递数字>10private int detail;public MyException(int a){this.detail=a;}//toString:异常的打印信息@Overridepublic String toString() {return "Demo04{" +"detail=" + detail +'}';}
}

我们来测试下

package exception;public class Test {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(1);} catch (MyException e) {System.out.println("MyException=>"+e);}}}

总结:

  • 处理运行时异常时,采用逻辑去合理规避同时辅助try-catch处理
  • 在多重catch块后面,可以加一个catch(Exception)来处理可能会被遗漏的异常
  • 对于不确定的代码,也可以加try-catch,处理潜在异常
  • 尽量去处理异常,切忌只是简单的调用printStackTrace()去打印输出
  • 具体如何处理异常,要根据不同的业务需求和异常类型去决定
  • 尽量添加finally语句块去释放占用的资源
http://www.tj-hxxt.cn/news/44463.html

相关文章:

  • 本地网站做哪方面吸引人潍坊百度网站排名
  • 安徽建设干部学校网站首页灰色关键词快速排名
  • 全包网站seo专业培训机构
  • 鲜花网站数据库建设职业技能培训网
  • 如何让自己的网站被搜索引擎收录郑州seo外包顾问
  • 游戏直播网站怎么做排名优化网站建设
  • 凡科网站做门户网怎么样百度官网优化
  • 网站动态维护客服sem优化怎么做
  • 密云住房和城乡建设部网站首页bt磁力搜索神器
  • php如何给网站做支付接口seo网站分析
  • 做营销型网站要多少钱新冠疫情最新消息
  • wordpress 数据库名百度seo查询
  • 做网站是先买域名还是站长之家查询域名
  • 建站之星安装模板失败西安网是科技发展有限公司
  • 东莞虎门邮政编码seo排名怎么优化软件
  • 东莞中小企业网站建设教育机构排名
  • 网站首页的psd怎么做培训学校招生方案范文
  • 网站seo快速排名网站设计公司北京
  • wordpress做物流网站杭州网站seo公司
  • 网站建设平台哪个好seo站长工具推广平台
  • wordpress 后台显示id福州seo兼职
  • 网站搭建网站管理网络推广费用计入什么科目
  • wordpress 网站访问认证页面秦皇岛seo招聘
  • 青海建设厅网站尚少岩seo优化网络公司排名
  • 佛山做网站制作蜘蛛搜索
  • 东莞市建设局门户网站外链网盘
  • 电子商城网站开发支持手机端服务营销策略
  • 宜昌模板网站建设上海快速优化排名
  • 做夺宝网站要办理什么意思搜索引擎营销方法主要有三种
  • 赣州万图网络科技有限公司网络优化app