public static void main(String[] args) {
int a;
boolean ok = true;
while(ok){
a = 10;
ok = false;
}
int b = a;
}
以上代碼是會報錯的眶明。 a是有可能沒有被初始化的。
即使ok在while執(zhí)行之前就為true,但是程序還是不會認(rèn)為while中的語句 一定會執(zhí)行稽屏,即使是while(true) 程序不會認(rèn)為這個while一定會執(zhí)行狐榔。
其實就如同if語句一樣轿偎,程序是無法聯(lián)系上下文從而判斷一段if語句是否會執(zhí)行坏晦。