それをロードしMyCat?
それをロードするために、MyCatを使用する場合、上記のコードは、ローダは、MYSAMPLEをロードします。
プロジェクトファイルがAPPClassLoadがそれをロードすることはできませんMyCat.Classが、削除された場合、明らかにカスタムローダーはMySample.Classがアプリケーションクラスローダーをロードした場合、その後、MyCat.ClassはAPPClassLoaderになり、その親をロードしようとし、それを読み込むことができますしかし、失敗したMyCat.Classが直接エラーをロードした場合に成功することはできません、
あなたはMyCat.Classファイルを残して、ファイルMySample.Classを削除する場合は、カスタムクラスをロードすることができMySample.Class、MyCat.Classは、両方のセットローダーすることができそれは何でしょうか?
カスタムローダーは、最初の父はそれAppClassLoaderに委託し、AppClassLoaderはちょうどそう、このMyCatを読み込むことができますので。。。。。。。
コード変更の下で:
変わらず、他のMyCatの参照MYSAMPLEクラス、
実行した後に、何ら問題は
しかし、この時点でシステムがカスタムローダがそれを読み込むことができ、ファイルを削除しMySample.Class場合は、もう一度それを実行していませんか?
複数の論理精査、ローダーは、カスタム、MySample.Classロード
AppClassLoaderローディングMyCat.classが
MyCatコードMYSAMPLEを使用する場合しかし、それにロードされたこのMYSAMPLE AppClassLoaderでは見つかりませんでした、MYSAMPLE AppClassLoaderをロードすることです.class、結果がより少ないロードする必要があり
、出力を:
これらの2つのクラスは、クラスローダ異なる名前空間によって、ある
サブローダがクラスをロードし、親クラスローダの負荷を見つけることができる、しかし、親クラスローダの負荷がサブローダーが表示されない:スカーレットは言いましたロードされたクラスなので、上記のエラーコード
そして、コードを変換:
また、システムMySample.Classを削除しますが、カスタムローダーは、そのロードすることができ
、出力を: