B.Singh B.Singh - 29 days ago 6
Java Question

Multiple open and close curly brackets inside method. - 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


What is the benefit of doing this? I have seen this kind of code.

Answer

It is not common practice to do this kind of thing, and I wouldn't do it normally.

Those inner blocks ( i.e. { ... } ) can serve a couple of purposes:

  • Blocks limit the scope of any variables declared within them; e.g.

    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;
    }
    

    However, I wouldn't recommend doing this. IMO, it's better to use different variable names OR refactor the code into smaller methods. Either way, most Java programmers would regard the { and } as annoying visual clutter.

  • Blocks can be used to attach labels.

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

    However, in practice you hardly ever see labelled break statements. And because they are so unusual, they tend to render the code less readable.

Comments