"new Runnable"と入力してCTRL + SPACEを押すと、Eclipseで匿名の内部クラスを作成できます。しかし、私が "スレッド"と同じことをするとき、それはしません。Runnable作業のEclipseオートコンプリート、スレッド用ではない
匿名のスレッドが必要になるたびに、新しいRunnableを作成してから、「Runnable」を「Thread」に変更する必要があります。
Eclipseに自動的にスレッドを作成させる方法はありますか?
"new Runnable"と入力してCTRL + SPACEを押すと、Eclipseで匿名の内部クラスを作成できます。しかし、私が "スレッド"と同じことをするとき、それはしません。Runnable作業のEclipseオートコンプリート、スレッド用ではない
匿名のスレッドが必要になるたびに、新しいRunnableを作成してから、「Runnable」を「Thread」に変更する必要があります。
Eclipseに自動的にスレッドを作成させる方法はありますか?
回避策としては、スレッドの作成のための新しいテンプレートを作成することができます。
Eclise(少なくとも3.7)には、Runnable用のものが1つあります。 runnable
と入力してからCtrl+Space
と入力すると、テンプレートの提案が表示されるまでお試しいただけます。
Thread
のための新しいテンプレートを作成するには、次の
Window > Show View > Templates
runnable
Thread
でRunnable
を置き換えることにより、Thread
は具体的なクラスであり、Runnable
はインターフェイスではないので、Eclipseがこれを実行していると思います。 Eclipseでは、デフォルトでは、匿名のクラスを作成することはできません。
Thread
を作成するために、より受け入れられな方法は、Thread
基底クラスにあなたを制限しないとにかくRunnable
を使用することです:
Thread thread = new Thread(new Runnable() {
public void run() {
...
}
});
thread.start();
...
はい。匿名の内部クラスは避けてください。スレッドが必要ですか?重要なことは何ですか?スレッドを拡張し、run()
を実装する通常のクラスを作成します。
さらに、必要に応じてスレッドインスタンスを作成しないでください。ユーザースレッドプール、エグゼキュータなど。
ありがとうございました本当にその質問に対する答えではありません。 –
です。あなたがどういうふうに押さえているのか分かりませんCtrl + です。
奇妙なことに、私はもう一度それをチェックして、それは本当に私のためではありません。どのEclipseバージョンを実行していますか?私はEclipse 3.7.2を使用しています。 Linuxの場合 –
これはカッコ内で行う必要があります。 '()'この機能は、Eclipseの最初のバージョン以降に存在しています。しかし、あなたのために 'run()'メソッドスタブを作成しませんでした。これを回避するために、作成された空の匿名クラスの本体の内部に入り、Ctrl + Spaceをもう一度押して、「上書き実行()メソッド」を選択します。 – adarshr
このパネルの「新規」をクリックして、新しいテンプレートを作成します。 Ctrl-spaceは期待どおりに動作します。
これはすばらしい解決策です!明日私が仕事に戻ったときにそれは私のために働くかどうかをチェックしなければならない。 –