我正在为OCA考试念书,我不明白为什么parseFloat()中的最后一行无法访问,而go()中的最后一行不是。除了返回类型之外,我没有看到很大的区别。无法访问的语句
public float parseFloat(String s) {
float f = 0.0F;
try {
f = Float.valueOf(s).floatValue();
return f;
} catch (NumberFormatException e) {
f = Float.NaN;
return f;
} finally {
return f;
}
System.out.println(""); //unreachable statement
}
public void go() {
System.out.println("A");
try {
System.out.println(3/0);
} catch (ArithmeticException e) {
System.out.println("b");
} finally {
System.out.println("c");
}
System.out.println("d"); //reachable statement
}
阅读https://docs.oracle.com/javase/tutorial/java/javaOO/returnvalue.html。从方法返回将停止方法的执行。在屏幕上打印某些内容不会。这是个很大的差异。 –
我希望我参加过那次考试,看起来很简单(; – Snickers3192
Snickers,成为我的客人,然后去考试中心看看;-) – Helenesh