Java基础知识强化之IO流笔记03:throws的方式处理异常
2015-09-28 16:07
666 查看
1. 什么时候使用throws ?
(1)定义功能方法时候,需要把出现的问题暴露出来,让调用者去处理。那么就通过throws在方法上标识。
(2)有时候,我们是可以对异常进行处理的,但是又有些时候,我们根本就没有权限去处理某个异常。或者说我们处理不了,我就不处理了。为了解决这个出错问题,java针对这种问题,就提供了另一种处理方案:throws 抛出(交给调用者处理)
注意:尽量不要在main方法上面抛出异常。
2. 格式:
throws 异常类名
注意:这个格式必须跟在方法的括号后面。
3. 案例:
(1)
(2)调用者处理这个异常,可以再往上级抛,如下:
(3)运行(2)中代码,如下:
根据上面的运行结果,可知:
只运行了第一行语句的:System.out.println("我饿了");
然后jvm虚拟机卡死在第二行语句:method();
因为这里jvm发现这个调用的method()方法是有问题的。
(4)很明显上面的处理方法欠佳,如下改进,在main方法中处理method方法异常,如下:
运行结果如下:
(1)定义功能方法时候,需要把出现的问题暴露出来,让调用者去处理。那么就通过throws在方法上标识。
(2)有时候,我们是可以对异常进行处理的,但是又有些时候,我们根本就没有权限去处理某个异常。或者说我们处理不了,我就不处理了。为了解决这个出错问题,java针对这种问题,就提供了另一种处理方案:throws 抛出(交给调用者处理)
注意:尽量不要在main方法上面抛出异常。
2. 格式:
throws 异常类名
注意:这个格式必须跟在方法的括号后面。
3. 案例:
(1)
(2)调用者处理这个异常,可以再往上级抛,如下:
(3)运行(2)中代码,如下:
根据上面的运行结果,可知:
只运行了第一行语句的:System.out.println("我饿了");
然后jvm虚拟机卡死在第二行语句:method();
因为这里jvm发现这个调用的method()方法是有问题的。
(4)很明显上面的处理方法欠佳,如下改进,在main方法中处理method方法异常,如下:
package com.himi.throwdemo; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; public class ExceptionDemo { public static void main(String[] args) { System.out.println("我饿了"); try { method(); } catch (ParseException e) { // TODO 自动生成的 catch 块 e.printStackTrace();//系统默认打印出错的信息 } System.out.println("我和大家好好的"); } //方法声明中抛出,是为了告诉调用者,你注意了,我有问题。 private static void method() throws ParseException { String s = "2015-09-28"; SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); Date d = sdf.parse(s); System.out.println(d); } }
运行结果如下:
相关文章推荐
- Java编写猜数字小游戏
- Java IO 之 InputStream源码
- 将java项目改成web项目
- JAVA Pattern和Matcher 的用法
- 使用junit单元测试SpringMvc
- Spring3 MVC请求参数获取的几种方法
- Struts对MVC的实现流程
- Java中异常处理之try和catch代码块的使用
- Spring之FactoryBean .
- Java Util 验证身份证号码是否规范
- Java实现把cmyk格式图片转换为RGB格式图片
- 利用java监听器实现在线人数统计
- eclipse下Ctrl+H搜索并替换全项目字符串
- MyEclipse项目中的包层次视图
- guava 学习笔记(二) 瓜娃(guava)的API快速熟悉使用
- Spring Batch Example – CSV File To MySQL Database (四)
- 获取Spring容器中Bean实例的工具类(Java泛型方法实现)
- 【笔记】Spring MVC学习指南(七)验证器
- Java基础知识强化之IO流笔记02:try...catch的方式处理异常
- List分类与用法总结