方法内有多个打开和关闭的花括号。 – Java

public class MyTestClass { public static void main(String[] args) { new MyTestClass().myMethod(); } public void myMethod(){ { //do something } { //do something } { //do something } }//method close }//class close 

这样做有什么好处? 我见过这种代码。

做这种事情并不常见,我不会这样做。

那些内部块(即{ ... } )可以用于以下几个目的:

  • 块限制在其中声明的任何变量的范围; 例如

     public void foo() { int i = 1; { int j = 2; } // Can't refer to the "j" declared here. But can declare a new one. int j = 3; } 

    但是,我不建议这样做。 IMO,最好使用不同的变量名称或将代码重构为更小的方法。 无论哪种方式,大多数Java程序员都会认为{}是令人讨厌的视觉混乱。

  • 块可用于附加标签​​。

     HERE : { ... break HERE; // breaks to the statement following the block ... } 

    但是,在实践中,你几乎看不到带标签的断言。 而且因为它们非常不寻常,所以它们往往会使代码的可读性降低。

 public void stuff() { int i = 48; { int i = 21; System.out.println(i); // prints 21 } System.out.println(i); // prints 48 } 

基本上,它是一种创建比整个函数更小的范围的方法……好处?让人们在理解之前更长时间地盯着你的代码… IMO它的风格很差,应该避免

它定义括号内的变量范围,有些人会说它更清晰或更有条理我敢肯定。

我个人不会推荐它。