黑马程序员技术交流社区

标题: 哪里错了呢,头大! [打印本页]

作者: toselect    时间: 2014-6-29 23:34
标题: 哪里错了呢,头大!
本帖最后由 toselect 于 2014-7-1 19:56 编辑
  1. 代码编译通过,运行出错:提示信息 java.lang.nosuchmethod... 求解!
复制代码
  1. class Res
  2. {
  3.         private String name;
  4.         private String sex;
  5.         private boolean flag=false;
  6.         public synchronized void set(String name,String sex)
  7.         {
  8.                 if(flag)
  9.                         try
  10.                         {
  11.                                 this.wait();
  12.                         }
  13.                         catch (Exception e)
  14.                         {
  15.                         }
  16.                 this.name=name;
  17.                 this.sex=sex;
  18.                 flag=true;
  19.                 this.notify();
  20.         }
  21.         public synchronized void out()
  22.         {
  23.                 if(!flag)
  24.                 try
  25.                         {
  26.                                 this.wait();
  27.                         }
  28.                         catch (Exception e)
  29.                         {
  30.                         }
  31.                 System.out.println(name+"---"+sex);
  32.                 flag=false;
  33.                 this.notify();
  34.         }
  35. }
  36. class Input implements Runnable
  37. {
  38.         private Res r;
  39.         Input(Res r)
  40.         {
  41.                 this.r=r;               
  42.         }
  43.         public void run()
  44.         {
  45.                 int x=0;
  46.                 while(true)
  47.                 {
  48.                                 if(x==0)
  49.                                         r.set("老王","男");
  50.                                 else
  51.                                         r.set("霜霜","女");
  52.                                 x=(x+1)%2;
  53.                 }
  54.         }

  55. }
  56. class Output implements Runnable
  57. {
  58.         private Res r;
  59.         Output(Res r)
  60.         {
  61.                 this.r=r;               
  62.         }
  63.         public void run()
  64.         {
  65.                 while(true)
  66.                 {
  67.                  r.out();
  68.                 }
  69.         }
  70. }
  71. class  InputOutputDemo
  72. {
  73.         public static void main(String[] args)
  74.         {
  75.                 Res r=new Res();
  76.                 new Thread(new Input(r)).start();
  77.                 new Thread(new Output(r)).start();

  78.         }
  79. }
复制代码



作者: 静丶    时间: 2014-6-30 07:24
坐等学习~
作者: 多一点    时间: 2014-6-30 08:36


作者: 初升的晨曦    时间: 2014-6-30 09:05
学习了.
作者: toselect    时间: 2014-6-30 19:45
多一点 发表于 2014-6-30 08:36
  • public synchronized void out()
  •         {
  •                 if(!flag){//这里少啦{

  • 不是这个问题,编译通过,运行出错。
    作者: 多一点    时间: 2014-6-30 22:51
    toselect 发表于 2014-6-30 19:45
    不是这个问题,编译通过,运行出错。

    我这运行真的没问题
    作者: toselect    时间: 2014-6-30 23:43
    多一点 发表于 2014-6-30 22:51
    我这运行真的没问题

    把课程源代码复制粘贴,也提示同样的错误,这是版本的问题吗?
    作者: 多一点    时间: 2014-6-30 23:45
    toselect 发表于 2014-6-30 19:45
    不是这个问题,编译通过,运行出错。

    你把你的错误贴过来看看
    作者: ╭月牙湾湾╮    时间: 2014-7-1 00:06
    回帖赚币!
    作者: toselect    时间: 2014-7-1 09:51
    多一点 发表于 2014-6-30 23:45
    你把你的错误贴过来看看



    作者: 多一点    时间: 2014-7-1 10:37
    估计是你的classPath配置上的问题
    作者: lzy418    时间: 2014-7-1 10:54
    粘贴运行表示没有任何问题啊。
    你查查你的java设置吧。

    捕获.PNG (8.62 KB, 下载次数: 16)

    捕获.PNG

    作者: 跑步先生    时间: 2014-7-1 11:32
    估计是你的jre中缺少相应的jar包吧!建议重新安装jre即可。
    作者: 喻永星    时间: 2014-7-1 14:29
    坐等学习
    作者: 喻永星    时间: 2014-7-1 14:30
    是不是你的JDK和eclipse的问题,查一下




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