有时我看到像以下这样的代码,但实际上并不知道它的含义:
void myFunc() {
MyClass a = new MyClass();
{
if (a.b == null) // doSomething
}
}
我真的很喜欢这种代码排序和封装(不仅因为如果你不想读它的内容,你可以一次性折叠整个块),但我想知道它是否有任何语法意义,除了视觉缩进之外。当然,我知道在每个代码块中声明的任何变量只能在该块中使用,但还有更多吗?也有对象初始化器,但是由于它们涉及到类的实际实例,因此上述是一个完全独立的块。
break
明确与一个封闭语句 (switch
,while
,do
,for
, 或foreach
) 相关联,并且如果没有这样的封闭语句,它会产生编译时错误。请参阅语言规范的第 8.9.1 节(链接在我的回答中)。 - Damien_The_Unbeliever