A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 史世锋 中级黑马   /  2015-9-17 23:02  /  140 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

package com.itheima;

//定义一个商品类
class Goods1
{
        String name;
        String use;
}

//定义生产者类,用来生产商品
class Producer1 implements Runnable
{
        Goods1 good;
        Producer1(Goods1 good)
        {
                this.good = good;
        }
        @Override
        public void run()
        {
                boolean flag = true;
                while(true)
                {
                        synchronized(Goods1.class)
                        {
                                if(flag)
                                {
                                        //生产者生产一个篮球
                                        good.name = "basketball";
                                        good.use = "play";
                                        flag = false;
                                }
                                else
                                {
                                        //生产者生产一个面包
                                        good.name = "面包";
                                        good.use = "吃的";
                                        flag = true;
                                }
                        }
                       
                }
        }
}

//定义消费者类,用来消费商品
class Consumer1 implements Runnable
{
        Goods1 good;
        Consumer1(Goods1 good)
        {
                this.good = good;
        }
        @Override
        public void run()
        {
                while(true)
                {
                        synchronized(Goods1.class)
                        {
                                //消费者消费商品
                                System.out.println(good.name + "---" + good.use);
                        }
                       
                }
               
        }
}
public class Test028
{

        /**
         * @param args
         */
        public static void main(String[] args)
        {
                Goods1 good = new Goods1();
                Producer1 producer = new Producer1(good);
                Consumer1 consumer = new Consumer1(good);
                new Thread(producer).start();
                new Thread(consumer).start();
        }

}


0 个回复

您需要登录后才可以回帖 登录 | 加入黑马