方法内catch块throw Exception 未捕获仍然编译通过的问题
来源:互联网 发布:画图软件使用教程 编辑:程序博客网 时间:2024/05/21 18:49
方法内catch块throw Exception 未捕获仍然编译通过的问题
一个关于JDK7版本新特性的小问题
在catch块抛出异常,并没有在方法名后声明捕获的情况下
private void catchExceptionTest() { try { } catch (Exception e) { throw e;//jdk6编译未通过,jdk7编译通过 }}
即使捕获的是RuntimeException
private void catchExceptionTest() { try { new RuntimeException(); } catch (Exception e) { throw e;//jdk6编译未通过,jdk7编译通过 }}
当然如果捕获的是一些非运行时异常(默认不捕获也能编译通过的异常),JDK7版本下也是会报错的啦~
看来JDK7默认catch块抛出的是运行时异常。相较JDK6的不会判断,抛出运行时异常catch捕获在抛出还编译不通过,感觉就笨笨的~
友情链接:eclipse配置JDK和设置编译版本的几种方法
附录:
Java异常机制
常见的RuntimeException
NullPointerException- 空指针引用异常
ClassCastException - 类型强制转换异常。
IllegalArgumentException - 传递非法参数异常。
ArithmeticException - 算术运算异常
ArrayStoreException - 向数组中存放与声明类型不兼容对象异常
IndexOutOfBoundsException - 下标越界异常
NegativeArraySizeException - 创建一个大小为负数的数组错误异常
NumberFormatException - 数字格式异常
SecurityException - 安全异常
UnsupportedOperationException - 不支持的操作异常
关于
JDK异常深入研究
JDK7/JDK8各种版本新特性
还有比如jdk7这么改的好处
就留个坑,日后在研究,嘿~
0 0
- 方法内catch块throw Exception 未捕获仍然编译通过的问题
- 在catch块中throw new Exception的意义
- catch块中throw new Exception的意义
- 在catch块中throw new Exception的意义 .
- 在 catch 块内进行 throw 的多种方式
- 在 catch 块内进行 throw 的多种方式
- 对 Exception 的catch,throw,throws
- throw exception和 try catch的区别
- C++ exception throw和catch的时候,发生了什么
- C++ exception throw和catch的时候,发生了什么
- 捕获报错的方法try +catch +System.IO.File.AppendAllText+Exception e.StackTrace
- Try throw catch 的一个问题
- VC try-catch捕获定义自己的exception
- spring 捕获未catch异常
- C++中的异常捕获与处理:Try、Throw、Catch关键字的理解和使用
- C++ 的 try throw catch 反汇编方法
- C++ 的 try throw catch 反汇编方法 收藏
- RAISERROR 抛出的错误未进入 CATCH 块
- sql精妙语句整理2
- 【第八课】抽象类和接口---接口的基础
- 解决ListView列表setEmptyView无效问题及源码解析
- SwipeRefresh 各种实现上拉,下拉刷新
- 浮动float与clear
- 方法内catch块throw Exception 未捕获仍然编译通过的问题
- JS 浅拷贝和深拷贝及extend应用
- SoapUI学习总结(三) --负载测试
- 利用java.nio.charset.CharsetDecoder自动识别字符集
- Bootstrap 图片
- Centos下安装Golang
- leetcode解题之136 #Single Number Java版(只出现一次的数字)
- windows mysql 自动备份的几种方法(定时备份)
- C#对Access数据库的操作