私は2つのjarファイルを持っています。それらをa.jarとb.jarと呼びましょう。
b.jarはa.jarに依存します。
a.jarで、クラスを定義しました。これをStaticClassと呼びましょう。StaticClassで、静的ブロックを定義し、「init」という名前のメソッドを呼び出しました。
public class StaticClass {
static {
init();
}
public void static init () {
// do some initialization here
}
}
b.jarにはメインがあるので、メインではinit()メソッドが呼び出されていると思いますが、実際には呼び出されていません。StaticClassがjvmによってロードされていないためだと思いますが、誰か教えてください
- 私の結論は正しいですか?
- jvmがクラスをロードするきっかけは何ですか?
- 静的ブロックを自動的に実行するにはどうすればよいですか?
ありがとう