1.线程的概念:线程是一个程序内部的顺序控制流(程序中不同的执行路径)
多线程:在OS中能同时运行多个任务(程序);在同一应用程序中有多个顺序流同时执行
2.Java的线程是通过java.lang.Thread类实现的;可以通过创建Thread的实例来创建新的线程;每个线程都是通过某个特定Thread对象所对应的方法run()来完成其操作的,方法run()称为线程体;通过调用Thread类start()方法来启动一个线程
3. 创建线程的两种方式:
1) 定义线程类实现Runnable接口,Runnable接口只有一个run()方法:
class RunnableTest implements Runnable{
@override
public void run(){}
}
main()方法中:RunnableTest rt = new RunnableTest ();
Thread thread = new Thread(rt); thread.start();
注意1:这种方法运行时, 调用thread.start()方法时,CPU有空闲,就开始执行子线程,main()方法和RunnerTest 类中的方法交替运行(并行执行)
注意2:如果直接调用run()方法,RunnerTest r = new RunnerTest (); r.run();这种方法时调用run()方法,先执行子线程中的run()方法,然后执行主线程方法
2)定义一个Thread的子类重写run()方法,通过Thread类的start()方法来启动一个新的线程
class ThreadTest extends Thread{
public void run(){}
}
ThreadTest thread1 = new ThreadTest ();
thread1.start();
执行方法:主线程和子线程交替进行,cpu分配的时间片是随机的 。
总结:如果可以使用接口,就不要用继承Thread类的方法,继承一个类后,不能够继承其他的类; 如果使用接口,还可以继承其他类,使用其他接口 。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/29056818/viewspace-767994/ ,如需转载,请注明出处,否则将追究法律责任。