进程:在系统中应用程序的执行都会用内存,每个应用程序都是一个进程;线程:每个进程在运行的时候都有多个线程会执行,java的优点就是多线程
run()方法里面放的是执行的代码片段;
start()方法是线程的启动方法;
package -------------
public class Demo01 {
int i;
public static void main(String[] args) {
Demo01.Thread1 t=new Demo01().new Thread1();
Demo01.Thread1 t1=new Demo01().new Thread1();
t.run();
t1.run(); t.start();
t1.start();
}
class Thread1 extends Thread{
@Override
public void run() {
// TODO Auto-generated method stub
for(i=0;i<10;i++){
System.out.println(Thread.currentThread().getName()+"---i="+i);
try {
sleep(1000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
}
分析结果可知:
对象执行run(),只有一个主线程main按照代码的顺序自顶层往下层开始执行
对象执行start(),线程开始就绪,线程调解器利用线程调度系统开始交互的执行线程中的run()
总结:调用run()是顺序执行,调用start()是交互执行;
本文详细介绍了Java中进程与线程的概念,通过实例演示了如何使用run()方法执行代码片段及start()方法启动线程。文章对比了直接调用run()方法与通过start()方法启动线程的区别,阐述了两种方式下线程执行的不同行为。
10万+

被折叠的 条评论
为什么被折叠?



