- 代码1
- class Demo{
- public void method(){
- try{
- throw new Exception();
- }
- catch(){}
- }
- }
- 代码2
- class Demo{
- public void method{
- throw new Exception();
- }
- }
- 代码3
- class Demo{
- public void method{
- try{
- throw new Exception();
- }
- final{}
- }
- }
- 代码4
- class Demo{
- public void method{
- throw new RuntimeException();
- }
- }
复制代码
代码1,能通过编译
代码2,不能通过编译
代码3,不能通过编译
代码3,能通过编译
理由:代码1中异常在内部被处理了所以不用再函数上声明。代码2中异常没有被处理必须声明,代码3中没有catch语句块异常没有被处理。代码4抛出的是运行时异常不用声明也可通过编译,是吗? |