黑马程序员技术交流社区

标题: 下面这段代码的错误到底在哪里?很长时间都没有发现 [打印本页]

作者: 冷月霜飞    时间: 2015-5-15 06:55
标题: 下面这段代码的错误到底在哪里?很长时间都没有发现
  1. class Resourse{
  2.         private String name;//定义资源的属性,名字
  3.         private int count=1;//定义资源属性,编号为
  4.         public synchronized void set(String name){
  5.                 this.name=name+count;
  6.                 count++;
  7.                 System.out.println(Thread.currentThread.setName().getName+"....生产者...."+this.name);
  8.         }
  9.         public synchronized void out(String  name){
  10.                 System.out.println(Thread.currentThread.setName().getName+"..消费者.."+this.name);
  11.         }
  12. }

  13. //描述生产者
  14. class Producer implements Runnable{
  15.         private Resourse r;
  16.         Producer(Resourse r){
  17.                 this.r=r;
  18.                         }
  19.         public void run(Resourse r){
  20.                 while(true){
  21.                 r.set("面包");
  22.                 }
  23.         }
  24.        
  25. }

  26. //描述消费者
  27. class Consumer implements Runnable{
  28.         private Resourse r;
  29.         Consumer(Resourse r){
  30.                 this.r=r;
  31.         }
  32.         public void run(Resourse r){
  33.                 while(true){
  34.                         r.out("面包");
  35.                 }
  36.         }
  37. }


  38. public class ThreadDemo {
  39.         public static void main(String[] args){
  40.                 Resourse r=new Resourse();//创建资源对象
  41.                
  42.                 Producer pro=new Producer(r);//创建线程任务
  43.                 Consumer con=new Consumer(r);
  44.                
  45.                
  46.                
  47.                 Thread t1=new Thread(pro);
  48.                 Thread t2=new Thread(con);
  49.                
  50.                 t1.start();
  51.                 t2.start();
  52.                
  53.         }

  54. }
复制代码

作者: zl074081027_hm    时间: 2015-5-15 09:42
本帖最后由 zl074081027_hm 于 2015-5-15 09:45 编辑

楼主,你这在eclipse里编译期间不报错???
编译问题:一,接口方法重写,要同名同参数,run方法不得添加其他参数;二,Thread.currentThread后面要加括号;三,setName(String s)。
作者: 冷月霜飞    时间: 2015-5-15 10:57
就因为报错没有找到原因才发的,谢谢解答!




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2