关于多线程创建时的参数问题
YieldDemo yd=new YieldDemo();(该类实现了Runnable 接口)
Thread t1=new Thread(yd,"Max");
Thread t2=new Thread(yd,"Min");
Thread t3=new Thread(yd,"Normal");
为什么这三个线程的参数可以是同一个实现Runnable 接口的实例化对象呢?难道不应该是三个吗……
------解决方案--------------------实现Runnable接口只是要重写里面的run方法,而run方法里面的方法体就是线程用来具体执行的指令,创建3个线程放入同一个参数,就表示有3个线程执行同一个指令,如果是3个不同的参数,那就表示3个线程分别执行3个不同的指令了.
------解决方案--------------------
实例化3个对象分别放到3个Thread的参数里就表示有3个线程,这3个线程分别执行不同的任务(其实就是同一个任务,因为3个对象的run方法都是一样的),参数的意思就是把你要执行的命令通过参数的形式传递给线程。只有重写的Runnable接口里面的run方法才是具体要执行的命令。或者说用另外一种方式创建线程(就是自定义类继承线程,但是也要重写run方法,run方法才是执行的命令)。