JAVA中方法f() throws ... 类中没有其余方法需要调用f() 可以这么写把 但是:用throws的

2024-12-18 23:56:11
推荐回答(3个)
回答1:

在抛出异常之后,在该异常所处在的代码块后面的所有代码都将得不到执行,这里的代码块是指最近的用大括号把这个异常括起来的代码。那个system.out.println()在if里面,如果放在这个异常之后肯定是不能执行的,因为已经向上抛出异常了,该局部代码块将退出执行,但是是放在if之外还是能正常执行的,这并不影响,因为这个system.out语句和这个抛出的异常不在同一个局部代码块内。

回答2:

其中@这句放在if方法外面编译能过?反正我是编译不通过(刚试了试)。为什么非要声明throws而又调用的时候不trycatch呢?不想麻烦写trycatch也可以在调用m方法的方法(这里是main方法)声明throws。声明throws的目的就是要强制调用者主动进行异常处理啊。如果不打算强制,就不要声明throws,这时仍然可以在函数体力使用throw语句。
throw后面的方法不执行,并且编译通不过。

回答3:

不是说遇到throw后面的语句不执行吗 ,说不执行可以写吗 ????

不用trycatch句式的话,异常是直接抛出的,没有后续处理步骤,catch的括号里面是处理方法