Java中的块是一个语句吗?

4

2
为什么你要把一个代码块视作语句?你是在开发编译器吗? - VFX
2个回答

5

根据Java语言规范(§14.5)中定义的语法,Block是一种Statement,具体来说它是StatementWithoutTrailingSubstatement


2
请参见JLS §14.5(请参见其他答案)。此外,在ecj和javac(两个最受欢迎的Java解析器/编译器)中:
  • 表示块的Javac AST节点:JCBlock,表示块的AST节点,扩展了JCStatement。
  • ecj的:Block扩展了Statement
因此,规范表示它是一个语句,并且两个主要实现将其表示为其版本的Statement的子类型。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接