以下をコンパイルしようとすると
public class Test {
public void method(String foo) {
// This compiles if the curly braces are uncommented
if(foo instanceof Object) // {
Object bar = (Object) foo;
// }
}
}
次のエラーが発生します
javac -Xlint:all Test.java
Test.java:5: error: not a statement
Object bar = foo;
^
Test.java:5: error: ';' expected
Object bar = foo;
^
2 errors
Object bar = (Object) foo;
コードをコンパイルするためにブロック内にある必要があるのはなぜですか?