2016-04-03 15 views
2
if(3 % 3 == 0){ 
    return 3;; 
} 

Javaはunreachable statementと言っています。Javaはどのように空文を解析しますか?

私はjavareturn 3;;

として
return 3; 
     ; 

を解析するので、それが到達不能文を言うことを理解しています。しかし、それは空の声明です。なぜそれについて、Javaは気にしていますか?

+7

なぜ特殊ケーシングの空文が気になるのですか? – user2357112

答えて

1

シンプル:Javaコンパイラは空文を単なる文として扱います。 Java言語仕様からthis sectionとして示しています

Statement: 

    StatementWithoutTrailingSubstatement 
    LabeledStatement 
    IfThenStatement 
    IfThenElseStatement 
    WhileStatement 
    ForStatement 

StatementWithoutTrailingSubstatement: 
    Block 
    EmptyStatement 
    ExpressionStatement 
    AssertStatement 
    SwitchStatement 
    ... 

そしてthe definition of unreachable statementsは、文のすべてのタイプに適用されます。具体的には次のように注意してください。

到達可能な場合、空文は正常に完了できます。

関連する問題