关闭

输入输出最终修改

237人阅读 评论(0) 收藏 举报
分类:

class Res
{
 private String name;
 private String sex;
 private boolean flag = false;

 public synchronized void set(String name,String sex)
 {
  if(flag)
   try
   {
    this.wait();
   }
   catch (Exception e)
   {
   }
  this.name = name;
  this.sex = sex;
  flag = true;
  this.notify();
 }
 public synchronized void out()
 {
  if(!flag)
   try
   {
    this.wait();
   }
   catch (Exception e)
   {
   }
  System.out.println(name+"....."+sex);
  flag = false;
  this.notify();
 }

}

class Input implements Runnable
{
 private Res r;

 Input(Res r)
 {
  this.r = r;
 }
 public void run()
 
  int x = 0;
  while(true)
  {
   if (x == 0)
    r.set("mike","man");
   else
    r.set("丽丽","女女女");
   x = (x+1)%2;
  
  }
 }
}

class Output implements Runnable
{
 private Res r;

 Output(Res r)
 {
  this.r = r;
 }
 public void run()
 {
  while(true)
  {
   r.out();
  }
   
 }
 
}

class  InputOutputDemo
{
 public static void main(String[] args)
 {
  Res r = new Res();
  
  new Thread(new Input(r)).start();
  new Thread(new Output(r)).start();
  
 }
}


0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:4977次
    • 积分:138
    • 等级:
    • 排名:千里之外
    • 原创:8篇
    • 转载:8篇
    • 译文:0篇
    • 评论:0条
    文章分类