サンプルのJavaスレッドプログラムをコーディングしましたが、次のようにエラーが表示されます
java.lang.Error: Unresolved compilation problem: The constructor Thread(Test) is undefined
表示中のテスト クラスは実行可能なクラスではありません。私は多くのサイトを参照しましたが、解決策が得られず、私が行ったことを示していることは正しいです.
私のJavaコード:
public class ThreadDemo {
public static void main(String args[]) {
new Thread(new Test()).start();
}
}
Test.java
クラスファイルRunnable
は を実装し、jar
ファイルに含まれており、プロジェクトにライブラリとしてeclipse
. それに問題はありますか?
テスト.java
public class Test implements Runnable {
@Override public void run() {
Sysout("Test");
}
}
テストクラスには、プロジェクト内の他のjarから他の多くのクラスを使用している他の多くのメソッドが含まれていますが、実行メソッドはこれらのメソッドを呼び出していません。これらの要因に問題はありますか?
このスレッドのデモは、sysout() のみで run() を含む Runnable を実装する別のクラスでうまく機能しています。しかし、私が言ったように、他のjarをさらに参照する多くのメソッドを含む私のTestクラスは、今までTestクラスのrun()メソッドで呼び出されていません。new Thread(new Test()).start(); を使用したとき Eclipse が不正な引数を表示するか、Cast to Runnable 引数の提案をエラーで表示します。次に、そのキャストを入れて、上記のエラーを取得しました。任意のタイプの jar と変数を使用するクラスのスレッドの実行に関連する問題はありますか?
前もって感謝します。