Thread
拡張するクラスをサブクラス化し、次のコードを記述してテストした場合、結果がどうなるか疑問に思っています。
class A extends Thread {
public A() {
this.start();
}
public void run() {
System.out.println(" in A " + Thread.currentThread().getName());
}
}
class B extends A {
public void run() {
System.out.println(" in B " + Thread.currentThread().getName());
}
}
public class OverrideRun {
public static void main(String[] args) {
A a = new A();
B b = new B();
}
}
結果は次のとおりです。
A スレッド 0
で B スレッド 1 で
しかし、なぜ2つのスレッドが作成されるのかわかりませんか?