Java如何解析空语句?

时间:2016-04-03 09:21:40

标签: java parsing compiler-errors

if( 3 % 3 == 0){
    return 3;;
}

Java说unreachable statement

我理解javareturn 3;;解析为

return 3;  
        ;

所以它说无法接受的声明。但这是空洞的陈述。为什么java会关心它?

1 个答案:

答案 0 :(得分:1)

简单:Java编译器将空语句视为一个语句。来自Java语言规范的this section表示:

Statement:

   StatementWithoutTrailingSubstatement
   LabeledStatement
   IfThenStatement
   IfThenElseStatement
   WhileStatement
   ForStatement

StatementWithoutTrailingSubstatement:
   Block
   EmptyStatement
   ExpressionStatement
   AssertStatement
   SwitchStatement
   ...

the definition of unreachable statements适用于所有类型的陈述。请特别注意以下内容:

  

如果空语句可以访问,则它可以正常完成。