1
class A{
    static{
      //initialize all things here
    }
}

これが、私のコードで静的ブロックを使用する方法です。しかし、クラス内に複数の静的ブロックを保持することもできるので

class A{
   static{
      //do something here
   }

   static{
      //do something else here
   }
}

複数の静的ブロックが使用されているケースを見たことがありますが、その理由がわかりませんか?

読みやすさのためであれば、以下の方法も使用できると思います

class A{
    static{
       someMethod();
       someOtherMethod();
    }
}

読みやすさ以外に、複数の静的ブロックの利点はありますか?

4

2 に答える 2

0

あなたの場合、あなたが言ったように、2番目の方が読みやすいです。 静的ブロックは、配置した順序で実行されます。あなたの場合、他の利点/パフォーマンスの問題はありません。

于 2013-09-12T07:15:08.560 に答える
0

それほど深刻な答えではありません: クラス全体 (最初と最後) に広がる複数の静的ブロックを使用して、初期化とフィールドとメソッドへのアクセスを難読化することができます。これにより、他の誰もあなたのクラスに触れないことを本当にしっかりと固めることができます。これらの静的ブロックのわずかな変更が、クラスの動作を完全に変更するからです。;-)

やや深刻: これらの静的ブロックを使用する必要がある場合 (お気付きかもしれませんが、私はあまり好きではありません)、クラスの一番上に置くことをお勧めします。あなたが提案したように。長さによっては、静的メソッドを検討できます。しかし、次の(貧しい)魂がそれに取り組むために認識できるように、それらを一緒に保ちます.

于 2013-09-12T15:12:14.223 に答える