Возьмите следующий фрагмент кода Java:
....
else if (true){ //hard-coded as true
///launch methodA
}
else {
///launch methodA (same code as in the ` else if ` statement)
}
....
Мне было интересно, как с этим справляется компилятор. Было бы логичным, если бы компилятор вообще не удалял оператор else if(true)
, чтобы не выполнять проверку, даже если он жестко закодирован как истинный. В частности, в Eclipse, как интерпретируется код выше?
Или как в следующем сценарии:
....
else if (true){ //hard-coded as true
///launch methodA
}
else {
///launch methodBB
}
....
Не было бы логичным в этом случае для компилятора удалить инструкцию else
? Потому что во время работы оператор else
недоступен.