1. 使用Thread类的子类实现线程,其功能为循环输出0-9数字,每次随机休眠不到10毫秒的时间。在main()方法中创建两个这样的线程,启动运行。所有线程开始、结束都要有相应的文字描述。
public class My extends Thread {
@Override
public void run() {
test();
}
public void test()
{
//随机数 随机出休眠时间
for (int i = 0; i < 10; i++)
{
System.out.println(Thread.currentThread().getName()+"线程运行开始"+i); try
{
Thread.sleep((int)Math.random()*10);
}
catch (InterruptedException e)
{
e.printStackTrace();
}
//当某个线程输出到第10个的时候 得到要去的城市 并直接结束
if(i==9)
{
System.exit(0);
}
}
}
public static void main(String[] args) {
My city1=new My ();
city1.start();
My city2=new My ();
city2.start();
}
}
2.使用Runnable接口实现线程,完成与上题同样的功能。
class My implements Runnable{
public My(){}
public void run(){
for(int x=0;x<10;x++){
System.out.println(Thread.currentThread().getName()+"线程运行开始");
System.out.println(x);
try{
Thread.sleep((int)Math.random()*10);
}catch(Exception e){}
}
System.out.println("线程运行结束");
}
}
public class test07 {
public static void main(String[] args) {
System.out.println("main线程运行开始");
My m=new My();
Thread t1=new Thread(m);
Thread t2=new Thread(m);
t1.start();
t2.start();
System.out.println("main线程运行结束");}}