4

私は C# とStatic Constructor、C# で見つけた Java を学習しています。これは、静的データを初期化するため、または一度だけ実行する必要がある特定のアクションを実行するために使用されます。最初のインスタンスが作成される前、または静的メンバーが参照される前に、自動的に呼び出されます。

例えば:

class SimpleClass
{
    // Static variable that must be initialized at run time. 
    static readonly long baseline;

    // Static constructor is called at most one time, before any 
    // instance constructor is invoked or member is accessed. 
    static SimpleClass()
    {
        baseline = DateTime.Now.Ticks;
    }
}

私の質問は、JAVA で同じ機能を得るにはどうすればよいかということです。

4

2 に答える 2

6

このような静的初期化ブロックを使用できます-

class SimpleClass
{
    static{

    }

}  

静的ブロックは、そのタイプのオブジェクトがいくつ作成されても、1 回だけ呼び出されます。

詳細については、このリンクが表示される場合があります。

更新: static初期化ブロックは、クラスがメモリにロードされたときにのみ呼び出されます。

于 2015-05-24T20:06:35.420 に答える
5

静的初期化ブロックがあります。

static final long baseline;
static {
    baseline = ...
}
于 2015-05-24T20:04:04.437 に答える