找传奇、传世资源到传世资源站!
Java 正文

java经典小程序,java入门100例!_

  • 资源分类:Java
  • 发 布 人:房东的猫
  • 文件大小:104858
  • 文件格式:.doc
  • 浏览次数:20
  • 下载次数: 0
  • 发布时间:9月5日

  • 标签: 源码例子
8.5玩家评分(1人评分)
下载后可评
介绍 评论 失效链接反馈

class Test{

   
public static void main(String[] args) {

       
Printer p = new Printer();

       
Thread t1 = new NumberPrinter(p);

       
Thread t2 = new LetterPrinter(p);

       
t1.start();

       
t2.start();

   
}   

}

class Printer{

   
private int index = 1;//
设为1,方便计算3的倍数

   
//
打印数字的构造方法,每打印两个数字,等待打印一个字母

   
public synchronized void print(int i){

       
while(index%3==0){try{wait();}catch(Exception e){}}

       
System.out.print(" " i);

       
index ;

       
notifyAll();

    }

   
//
打印字母,每打印一个字母,等待打印两个数字

   
public synchronized void print(char c){

       
while(index%3!=0){try{wait();}catch(Exception e){}}

       
System.out.print(" " c);

       
index ;

       
notifyAll();

   
}   

}

//打印数字的线程

class NumberPrinter extends Thread{

   
private Printer p;

   
public NumberPrinter(Printer p){this.p = p;}

   
public void run(){

       
for(int i = 1; i<=52; i ){

           
p.print(i);

       
}

    }

}

//打印字母的线程

class LetterPrinter extends Thread{

   
private Printer p;

   
public LetterPrinter(Printer p){this.p = p;}

    public void run(){

       
for(char c='A'; c<='Z'; c ){

           
p.print(c);

       
}

    }

}

评论

发表评论必须先登陆, 您可以 登陆 或者 注册新账号 !


在线咨询: 问题反馈
客服QQ:174666394

有问题请留言,看到后及时答复