Java allows anything to be labelled . only a declaration is not allowed to be labelled. I feel that only a loop should be labelled and nothing else makes sense. Am i thinking right?
Labelled break statements can be part of many common non-looping clauses including if, else, try, catch, and finally. If labelled statements were restricted to where they could be referenced, the checking would be quite involved.