1.理解
程序:静态的代码
进程:执行的程序
线程:进程的细分、程序的一条执行路径
2.如何创建java程序的线程
1.方法一:继承Thread方法:见demo
线程里的常用方法:star(),run() , currentThread() setName(string name) yield()sleep() wait() notify() notifyAll() isAlive()
2.方法二:
1.创建一个实现了Runnable接口的类
2.实现接口的抽象方法
3.创建一个Runnable接口实现类的对象
4.将此对象作为形参传递给Thread类的构造器中,创建Thread类的对象,此对象即为一个线程
5.调用start方法,启动线程并实现run方法3.线程的生命周期
3.区别与联系
联系:public class Threadimplements Runnable
区别:实现的方法优于继承的方式
1.多继承,避免了单继承的局限性
2.如果多个线程要操作同一份资源(数据)更适合使用实现的方式
操作共享数据用实现更好一些
4.线程的同步机制(重点、难点)
5.线程的通信
package Thread;
//创建多线程的方式之一:继承与Thread类
public class TestThread {
public static void main(String[] args) {
PrintNum p1 = new PrintNum("线程1");
PrintNum p2 = new PrintNum("+++++++线程2");
p2.setPriority(Thread.MAX_PRIORITY);
p1.setPriority(1);
p1.start();
p2.start();
}
}
class PrintNum extends Thread {
public void run() {
for (int i = 0; i <= 100; i++) {
if (i % 2 == 0) {
System.out.println(currentThread().getName() + ":" + i);
}
}
}
public PrintNum(String name) {
super(name);
}
}