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

Java說unreachable statementJava如何解析空語句?

我明白java解析return 3;;作爲

return 3; 
     ; 

所以說不到的語句。但這是空話。爲什麼Java關心它?

+7

他們爲什麼會打擾特別空洞的陳述? – user2357112

回答

1

簡單:Java編譯器將空語句視爲一個語句。作爲this section從Java語言規範指出:

Statement: 

    StatementWithoutTrailingSubstatement 
    LabeledStatement 
    IfThenStatement 
    IfThenElseStatement 
    WhileStatement 
    ForStatement 

StatementWithoutTrailingSubstatement: 
    Block 
    EmptyStatement 
    ExpressionStatement 
    AssertStatement 
    SwitchStatement 
    ... 

而且the definition of unreachable statements適用於所有類型的語句。具體請注意以下幾點:

空的語句可以正常完成,如果它可以訪問。