Cat1类内的输出语句会一直执行
Dog1类内的输出语句只会执行一次
/* * 功能:演示线程的注意事项 */ package Demo14; public class Demo14_4 { public static void main(String[] args) { Dog1 dog1 = new Dog1(); dog1.run(); Cat1 cat1 = new Cat1(); cat1.start(); } } //猫类 class Cat1 extends Thread { @Override public void run() { while (true) { try { Thread.sleep(100); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } System.out.println("11"); } } } //狗类 class Dog1 implements Runnable { @Override public void run() { System.out.println("22"); } }
重点在于while语句,使得Cat1内的输出语句无限循环执行,如果想要限定次数可以定义变量在while内进行if判断,返回break即可停止
class Cat1 extends Thread { int time = 0; public void run() { while (true) { try { Thread.sleep(100); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } System.out.println("11"); time++; if (time == 5) { break; } } } }输出五次后自动停止