请问下答案是什么呢?

public class Test{
public static String output=" ";

public static void foo(int i){
try{
if(i==1){
throw new Exception();
}
output+="1";
}catch(Exception e){
output+="2";
return;
}finally
output+="3";
}
output+="4";
}

public static void main(String[] args){
foo(0);
foo(1);
System.out.println(Test.output);
}
}

米脂
浏览 83回答 3
3回答

慕妹3146593

答案是: 134234 首先java代码运行后,main函数是入口, 先执行foo(0) 这句代码,然后 try执行完,output="1",然后执行finally output="13" 接着 output="134" 然后执行foo(1),在try里面抛出异常 执行catch里面的语句 output="1342" try catch 语句中finally 肯定执行 所以output="13423"然后执行output+="4"; 所以output="134234" 最后输出

郎朗坤

public class考试{publicstatic字符串输出= ";”;;public static void foo(I){试试看。如果(I= = 1){把新的exception();}输出+ =“1”;;} catch(异常){输出+ =“2”;;返回;}最后输出+ =“3”;;}输出+ =“4”;;}public static void main(字符串[ ] args){Foo(0);Foo(1);System.out。println(测试。输出);}}

慕村9548890

您好,提问者:  因为output 是static,共享区域,是字符串类型,不会进行算数运算。结果输出:134234
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java