/** * 方式一:继承Thread类 * 1.让某个类成为Thread类的子类 */
/** * 自定义线程,让其循环打印1~100 * 1.继承Thread类 * 2.重写Thread类中的run方法,将要让该线程执行的内容写在该方法中 * 3.创建Thread类的对象后,调用start()方法,启动线程 * */
自定义的线程类:
public class MyThread extends Thread {
//如果在创建线程对象时需要设置线程名,这里调用父类的构造方法
public MyThread(String name){
super(name);
}
/**
* 希望多线程环境下执行的代码,写再run方法中
*/
@Override
public void run() {
//获取当前线程对象
Thread mt = Thread.currentThread();
for (int i = 0; i < 100; i++) {
//让当前线程休眠,让其他线程有机会在当前线程休眠的时间执行
try {
Thread.sleep(10);
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println(mt.getName() + " - " + i);
}
}
}
main方法
记得创建自定义的线程对象,再调用start方法
public class MainThread {
public static void main(String[] args) {
//先创建自定义线程对象,让该线程启动
MyThread mt1 = new MyThread("线程A");
MyThread mt2 = new MyThread("线程B");
//不能调用run(),必须要调用start()方法才能启动线程
mt1.start();
mt2.start();
}
}