dポイントプレゼントキャンペーン実施中!

いつもお世話になります。

以前あるソースコードを眺めていたら、中カッコ{}だけの記述をしているのを見かけました。
例えば、

public class Test {
public static void main(String args[]) {
{
String s = "ああああああああ";
System.out.println(s);
}
}
}

のような感じで、{から始まり何かの処理を書いて}で閉じるというようなもので、if文やfor文などなくいきなり中カッコで記述するというものです。
このような書き方ができるのは初めてしったのですが、このような書き方は何かの呼ばれ方があるのでしょうか、
またこのように書くことによって何かメリットはあるのでしょうか。

宜しくお願いします。

A 回答 (2件)

> 書き方は何かの呼ばれ方があるのでしょうか、



単に「ブロック」もしくは「コードブロック」で良いと思います。


> またこのように書くことによって何かメリットはあるのでしょうか。

変数の有効範囲(スコープ)を限定する働きが有ります。

下記のコードはちゃんと動きますが、内側の{}を外してしまうと変数sが二重宣言となってしまうのでコンパイルエラーになります。

public class Test {

public static void main(String args[]) {

{
String s = "ああああああああ";
System.out.println(s);
}

{
String s = "いいいいいいいい";
System.out.println(s);
}
}
}
    • good
    • 1

推測ですが、Javaの変数のスコープはブロック({})単位なので、変数のスコープを指定したいとか?


あと、VisualStudioではブロック単位でコードの表示・非表示を制御できるので、それ絡みかなぁ。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています