阅读下面代码,选择正确的执行结果classPlane{staticStrings=”-”;publicstaticvoidmain(String[]args){newPlane().s1();System.out.println(s);}voids1(){ try{s2();} catch(Exceptione){s+=“c”;} } voids2(){ s3();s+=”2”; s3();s+=”2b”; } voids3()throwsException{ thrownewException(); } }D)编译错误A)-B)-2cC)-2c2bc
时间: 2024-04-20 17:23:43 浏览: 73
(完整word版)java100道选择题含答案.pdf
根据给定的代码,我们可以预测执行结果。在中,我们可以看到以下执行流程:
1. 在 `main` 方法中创建 `Plane` 对象,并调用 `s1` 方法。
2. 在 `s1` 方法中,调用 `s2` 方法。
3. 在 `s2` 方法中,首先调用 `s3` 方法。由于 `s3` 方法抛出了异常,程序会跳转到异常处理部分。
4. 在异常处理部分中,将字符 "c" 添加到字符串 `s` 中。
5. 因为异常已经被处理,程序会继续执行 `s2` 方法的剩余部分。
6. 继续调用 `s3` 方法,再次抛出异常。
7. 由于没有在 `s2` 方法中的第二次异常抛出后添加异常处理机制,所以程序会将异常传递给调用它的方法,即 `s1` 方法。
8. 在 `s1` 方法中的异常处理部分,将字符 "c" 添加到字符串 `s` 中。
9. 程序继续执行,输出字符串 `s` 的值。
根据以上分析,正确的执行结果是 C)-2c2bc。
阅读全文