Re: Who can tell me how this program runs?
On May 2, 10:16 am, Jack Dowson <jckd...@aol.com> wrote:
Hello Everybody:
Here is a program written to learn the multithread character of java!
class NewThread4 extends Thread{
NewThread4(String name){
super(name);
}
public void run(){
for(int count = 10,row = 0; row<10 ; row++){
for(int i = 0; i< count ; i++)
System.out.print('*');
System.out.println();
}
System.out.println(currentThread().getName() + " is over");
}
}
class ThreadDemo4{
public static void main(String[] args){
NewThread4 thd = new NewThread4("new Thread");
thd.start();
for(int i =0 ; i<10; i++){
System.out.println(Thread.currentThread().getName()+ " is running");
}
System.out.println(Thread.currentThread().getName() + " is over!");
}
}
The output is out of my anticipation!
I don't know how it works?
Any reply will be greatly appreciated!
Well, I'm not sure what you're seeing, but the point is that once you
call thd.start(), a new thread is spawned, and the run method of your
NewThread4 is executed in that other thread.
What this means is that the code in your run() method can run at the
same time as the code in your main method.