java コマンドを使用して Java プログラムを実行する場合、詳細オプションを -verbose で指定すると、クラスがいつロードされるかを調べることができます。例えば:
java -verbose Test | grep "file:"
[Loaded Test from file:/Users... ]
[Loaded C1 from file:/Users... ]
[Loaded A1 from file:/Users... ]
[Loaded B1 from file:/Users...]
[Loaded C2 from file:/Users...]
検証段階がいつ行われるかを知る方法はありますか? クラスの検証は、ロード直後に行われるとは限りません。たとえば、次のようなものが理想的です。
java -verbose Test | grep "file:"
[Loaded Test from file:/Users... ]
[Loaded C1 from file:/Users... ]
[Loaded A1 from file:/Users... ]
[Loaded B1 from file:/Users...]
[Verified C1]
[Loaded C2 from file:/Users...]
[Verified C2]
等
「これは必要ない」「なぜこれをやりたいのか」という答えを避けてください。それは純粋な興味からであり、まだ質問する価値があります.