1 package com.twod4z; 2 /** 3 * @program: com.twod4z 4 * @description:爬山对象 线程 5 * @author: Mr.Lin 6 * @create: 2019年8月7日 7 **/ 8 public class Climb extends Thread{ 9 int time; //速度/米 10 int num; //每次休息时间 11 int mountain; //山的高度 12 13 public Climb(int time,int mountain) { 14 super(); 15 this.time=time; 16 this.mountain = mountain*1000; //千米 17 } 18 //run方法 19 public void run() { 20 String name=Thread.currentThread().getName(); //获取当前线程名 21 while(true) { 22 mountain-=100; //爬山 23 System.out.println(name+"爬了"+(num+1)+"个100米"); 24 num++; //爬100米次数+1 25 try { 26 Thread.sleep(time); //爬100米用的时间 27 } catch (InterruptedException e) { 28 e.printStackTrace(); 29 } 30 if(mountain<=0) { 31 System.out.println("***"+name+"爬到了终点***"); 32 break; 33 } 34 } 35 36 } 37 38 }
1 package com.twod4z; 2 /** 3 * @program: com.twod4z 4 * @description:测试类 5 * @author: Mr.Lin 6 * @create: 2019年8月8日 7 **/ 8 public class ClimbTest { 9 public static void main(String[] args) { 10 //创建线程 11 Climb t1=new Climb(500,1); 12 Climb t2=new Climb(800,1); 13 14 //给线程赋名 15 t1.setName("年轻人"); 16 t2.setName("!老年人"); 17 18 //start运行 19 t1.start(); 20 t2.start(); 21 } 22 23 }