基本信息
源码名称:java经典小程序,java入门100例!
源码大小:0.10M
文件格式:.doc
开发语言:Java
更新时间:2016-04-16
   友情提示:(无需注册或充值,赞助后即可获取资源下载链接)

     嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):813200300

本次赞助数额为: 2 元 
   源码介绍


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);

        }

    }

}