@Override
public String toString() {
return this.getName() + " created ";
}
между
@Override
public String toString() {
return Thread.currentThread().getName() + " created ";
}
по отладке видно, что в последнем случае появляется main created, которого как я понял быть не должноpackage com.javarush.task.task16.task1623;
/*
Рекурсивное создание нитей
*/
public class Solution {
static int count = 15;
static volatile int countCreatedThreads;
public static void main(String[] args) {
System.out.println(new GenerateThread());
}
public static class GenerateThread extends Thread {
public GenerateThread() {
super(String.valueOf(++Solution.countCreatedThreads));
start();
}
@Override
public String toString() {
//return this.getName() + " created ";
return Thread.currentThread().getName() + " created ";
}
@Override
public void run() {
while (Solution.countCreatedThreads < Solution.count) {
System.out.println(new GenerateThread());
}
}
}
}