Java no memo

自分のためのJavaメモ。

スレッドの基本

スレッドを起動する

  1. Threadクラスを拡張したクラスを作る。
  2. run()メソッドを定義する。
  3. インスタンスを作る。
  4. start()メソッドで、別スレッドでrun()メソッドが実行される。
// Car.java
public class Car extends Thread{
  public void run(){
    // 別スレッドで行いたい処理
    
  }
}
// Test.java
public class Test {
  public static void main(String[] args) {
    Car car = new Car();
    car.start();  //←スレッドを起動
  }
}

スレッドを一時停止する

  1. sleep(1000)メソッドを書く。1000で1秒。
  2. try~catch文を書く。
  3. InterruptedExceptionをcatchする。
try {
  sleep(1000);
} catch (InterruptedException e) {
   e.printStackTrace();
}

InterruptedException

  • 割り込みが入ったら発生。
  • もう待機しない。

スレッドの終了を待つ

  1. join()メソッドを書く。
  2. try~catch文を書く。
  3. InterruptedExceptionをcatchする。
Car car = new Car();
try {
  car.join();
} catch (InterruptedException e) {
   e.printStackTrace();
}