Java多线程-1 创建线程
自学了并发编程有一定时间了,也有打算做一些总结但一直以没时间为借口安慰自己,现在抽点时间整理一下吧。
实现线程的2种方式:
1 继承Thread类
class Demo1 extends Thread {
@Override
public void run() {
for (int i = 0; i < 5; i++) {
System.out.println("Hello: " + i);
try {
Thread.sleep(100);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
2 实现Runnable接口
class Demo2 implements Runnable {
@Override
public void run() {
for (int i = 0; i < 5; i++) {
System.out.println("Hello: " + i);
try {
Thread.sleep(100);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
运行测试类:
public class Application {
public static void main(String[] args) {
Demo1 runner1 = new Demo1();
runner1.start();
Thread t2 = new Thread(new Demo2());
t2.start();
}
}
运行结果:
Hello: 0
Hello: 0
Hello: 1
Hello: 1
Hello: 2
Hello: 2
Hello: 3
Hello: 3
Hello: 4
Hello: 4
代码及笔记参见:github address.