クラスがJavaコードで最初に使用されたときに読み込まれることがわかりました。私はJavaコードを実行中にクラスパスを渡しています。クラス>>メイン>>新規スレッド>>コールクラスコンストラクタ>>スレッド実行コード>>存在しないクラスのオブジェクトを作成しよう>>クラスをキャッチするClassNotFoundException >>存在しないクラスをクラスパスに入れます。手動で>>そのクラスのオブジェクトを作成しようとします>> ClassNotFoundExceptionをスローします クラスパスがクラスパスディレクトリに置かれた後でも、ClassNotFoundExceptionが繰り返されます
ClassNotFoundExceptionが発生すると、必要な.classファイルがクラスパスディレクトリに置かれ、プログラムを再起動したくありません。 ClassNotFoundExceptionを獲得した後、Mainから新しいスレッドを開始してフローに従うと、正常に動作します。しかし、私は同じスレッドを使用するとうまく動作しません。
どうすれば私のプログラムは実行時にclasspathクラスファイルを再読み込みするのですか?
ヒント:stackoverflowは、テキストの書式設定に**マークアップ**を使用します。 **あなたの質問にHTMLタグを入れないでください**。代わりに、ヘルプセンターに目を通して、入力をどのように書式設定できるかを理解してください!プラス:ここに**最小限の実行可能な例を置くことを検討してください。あなたの質問は興味深いと聞こえますが、私はあなたの声明を検証するために必要なコードを自分で書く時間がありません! – GhostCat
なぜですか?実行時にクラスにアクセスできるのであれば、最初はクラスパス上にないのですか? – EJP
@EJP私はいくつかの遠隔地から必要な.classファイルを受け取る必要があり、また私のプログラムは遠隔から受信したオブジェクトを処理する必要があるためです。 –