問題タブ [static-initializer]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - C++0xの静的初期化とスレッドセーフ
C ++ 03標準の時点では、関数スコープの静的初期化がスレッドセーフであることが保証されていないことを私は知っています。
C ++ 0x標準が最終的に標準スレッドサポートを提供するので、関数スコープの静的初期化はスレッドセーフである必要がありますか?
java - Javaの静的/インスタンス初期化ブロックはどのような順序で実行されますか?
プロジェクトにいくつかのクラスが含まれており、それぞれに静的初期化ブロックがあるとします。これらのブロックはどのような順序で実行されますか? クラス内では、そのようなブロックはコードに表示される順序で実行されることを知っています。クラス間で同じだと読んだことがありますが、私が書いたいくつかのサンプルコードはそれに同意しません。私はこのコードを使用しました:
そして、この出力を得ました:
START
静的 - 祖父母
静的 - 親
静的 - 子
インスタンス - 祖父母
コンストラクター - 祖父母
インスタンス - 親
コンストラクター - 親
インスタンス - 子
コンストラクター - 子
END
そこから明らかな答えは、親のブロックが子のブロックよりも先に実行されるということですが、これは偶然の一致である可能性があり、2 つのクラスが同じ階層にない場合は役に立ちません。
編集:
これを LoadTest.java に追加して、サンプル コードを変更しました。
クラス名が示すように、新しいクラスをどこにも参照していません。新しいプログラムは、古いプログラムと同じ出力を生成しました。
c - {} を含む C コード
私はいくつかのCコードでこれを見ました:
これはどういう意味ですか?
java - Java が静的初期化ブロックからチェック例外をスローできないのはなぜですか?
Java が静的初期化ブロックからチェック例外をスローできないのはなぜですか? このデザイン決定の背後にある理由は何でしたか?
java - 静的初期化ブロックの使用
静的initブロックがどのように機能するかを知っています。
誰かがそれのいくつかの典型的な使用法を教えてもらえますか?
java - クラスをロードせずにJavaで実行する静的初期化ブロックを取得します
ここに示すように、いくつかのクラスがあります
...
TrueFalseQuestion
メイン メソッドを実行したときに 0 ではなく 1 を取得するように、静的メソッドが常に実行されるようにクラスを変更するにはどうすればよいですか? メインメソッドを変更したくありません。
サブクラスがファクトリに登録されるファクトリ パターンを実際に実装しようとしていますが、この質問のコードを簡略化しました。
.net - linq2sql の使用中に奇妙な例外が発生する
これは、そのようなクラスを実装すると得られるものです:
db は linq2sql データコンテキストです
なぜこれが起こったのか、これを解決する方法は?
UPD : そのファイルは linq2sql によって生成されます:
メソッド内でdbをインスタンス化すると(ここのようなプロパティではありません)、すべて正常に動作します。静的メソッドは今朝まで機能していましたが、2 日前のバージョン (リポジトリから復元されたもの) でも同じエラーが発生します。
更新 2 :
これは、問題が解決された後の私の部分クラスです。
c++ - クラスメンバーによる構造体の静的初期化
多数のバニラchar*
ポインターだけでなく、オブジェクト メンバーも定義されている構造体があります。このような構造体を静的に初期化しようとすると、コンパイラ エラーが発生します。
SomeObject
引数のない public デフォルト コンストラクターがあるため、これが問題になるとは思いませんでした。しかし、これを (VS を使用して) コンパイルしようとすると、次のエラーが発生します。
理由はありますか?
更新: SomeObject の定義は次のとおりです
java - Java - 静的初期化ブロック内のクラス型
静的初期化ブロック内からクラス型を取得することは可能ですか?
これは私が現在持っているものの簡略化されたバージョンです::
これは、オブジェクトとその注釈などに関する情報を保持するデータ構造を初期化するという、私が行っていることに近いです...おそらく間違ったパターンを使用していますか?
編集
私の問題に最もよく当てはまるものに基づいて受け入れられた回答を選択しましたが、現在の3つの回答すべてにメリットがあるようです。
java - クラスを強制的に初期化するにはどうすればよいですか?
これを行うための最良かつ最もクリーンな方法は何ですか?具体的には、そのクラスで実行するために静的初期化ブロックにいくつかのコードが必要ですが、これをできるだけきれいに見せたいと思います。