MainクラスでThreadを継承するには
昨日の続き。短記事。昨日の記事ではThreadクラスを継承するクラスとメインメソッドがあるクラスは別々に分けていたけど、一緒に出来るのでは?と思ったので試してみた。結論、出来た。
やり方としては
(1) main()メソッドのあるクラスでThreadクラスを継承(extends)する
(2) main()メソッドを記述する。
(3) main()メソッドの中で自クラス(main()メソッドのあるクラス自身)をインスタンス化。
(4) (3)のインスタンスでstart()メソッドを記述する(スレッド実行)。
(5) main()メソッドのあるクラスでrun()メソッドも記述。
(6) run()メソッドの中に並列処理で実行したい内容を書く。
class Main extends Thread{ public static void main(String[] args){ System.out.println("Thread 1 moved."); Main mi = new Main(); mi.start(); } public void run(){ System.out.println("Thread 2 moved."); } }
実行結果 Thread 1 moved. Thread 2 moved.
そういえば継承(extends)って始まり小文字なんだね。。。implementsと同じだ。ちょっと躓いたポイント。
× Extends
○ extends