关于使用线程调用run方法的问题
/** * */ public class TwoThread extends Thread { private Thread creatorThread; public TwoThread(){ creatorThread = Thread.currentThread(); } public void run(){ for(int i=0; i<5; i++){ printMsg(); } } public void printMsg(){ Thread t = Thread.currentThread(); if(t==creatorThread){ System.out.println("Creator thread"); } else if(t==this){ System.out.println("New thread"); } } /** * @param args */ public static void main(String[] args) { TwoThread tt = new TwoThread(); tt.start(); for(int i=0; i<10; i++){ tt.printMsg(); } } }
大家好,该程序在调用tt.start()方法时为什么没有直接去调用run()方法,而是执行完for循环后才调用的run()方法?
yangbj2008
2011/10/18 23:36- it技术
- 互联网问答
- IT行业问题
- 编程语言问答
- 计算机技术
- 点赞
- 收藏
- 回答
满意答案