1. ホーム
  2. java

[解決済み] わかりやすく説明すると、JavaのRunnableとは何ですか?[終了しました]

2022-03-15 20:16:41

質問

Javaにおける"runnable"とは、素人目にもわかるように何ですか?私は高校のAPプログラミングの生徒で、課題は"runnable"が何であるかを調べたり、他の人から探したりすることです(私たちはOOPに入ったばかりで、まだスレッドを触っていません)。

どのように解決するのか?

Runnableは基本的にスレッドに入れることができるクラス(RunnableはInterface)の一種で、スレッドが何を行うべきかを記述したものです。

実行可能インターフェース はメソッドを実装するためにクラスに要求します run() というように

public class MyRunnableTask implements Runnable {
     public void run() {
         // do stuff here
     }
}

そして、こんな風に使います。

Thread t = new Thread(new MyRunnableTask());
t.start();

がなかった場合は Runnable インターフェイスを使用すると、他のスレッドであなたのものを実行する責任を負うThreadクラスは、プロミスを見つけることができません。 run() メソッドが存在しないため、エラーが発生する可能性があります。そのため、このインターフェイスを実装する必要があるのです。

上級編。匿名型

なお、通常のようにクラスを定義する必要はなく、すべてインラインで行うことができます。

Thread t = new Thread(new Runnable() {
    public void run() {
        // stuff here
    }
});
t.start();

これは上記と同様ですが、別の名前付きクラスを作成しないだけです。