带哥们 我想问一下关于多线程的问题

public class MyThread extends Thread {

    @Override
    public void run() {
        for(int i = 1 ; i <= 20 ; i++) {
            System.out.println(i+".你好,来自线程"+Thread.currentThread().getName());
        }
    }
}


如上代码,今天老师说这个代码相当于创建了20个子线程,这种说法对吗???

你还需要确定的事情就是你的老师是否是教java的,
答案二楼已经给出了...

我也不清楚,我创建线程一般都是这样创建的

public class MyThread extends Thread {

    @Override
    public void run() {       
            System.out.println(".你好,来自线程"+Thread.currentThread().getName());
    }
    public static void main(String[] args){
         for(int i = 1 ; i <= 20 ; i++) {
            MyThread thread=new MyThread();
            thread.start();
        }
    }
}

这是在一个线程里面循环获取当前线程名字20次,创建多少线程就看你怎么用这个类了,你可以创建20个MyThread才算20个线程,只是这样一个MyThread它就是一个继承Thread的类

你这么写确实会创建20个线程,for循环执行20次,每次都会创建一个线程

2L正解,如果只实例化这个类运行,只有一个线程循环了20次