私はクラスロードに関するいくつかの実験を行っていたので、私は以下のような簡単なコードを書いた。loadClassメソッドでfindLoadedClassメソッド呼び出しが必要なのはなぜですか?
CustomClass customClass1 = new CustomClass();
CustomClass customClass2 = new CustomClass();
そして、それはすでに現在のローダによってロードされている場合は、最初のインスタンスの作成のために、それはloadClassメソッドに行って、findLoadedClassメソッドを呼び出したことに気づきました。そうではありませんでした。 しかし、2番目のインスタンスでは、loadClassメソッドには行かず、そのインスタンスを直接作成しました。
ここで私の質問は、クラスがすでにロードされているので、2番目のインスタンスを作成していたときに、loadClassメソッドには移動しなかったということです。したがって、jvmがすでにどのクラスがロードされているのか、どのクラスがロードされていないのか、loadClassメソッド内でfindLoadedClassメソッドが必要です。 (Javaの8用)Java仮想マシン仕様から