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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 金福林 中级黑马   /  2014-11-15 15:44  /  998 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文


多线程05集的代码,编译正常错误提示
Exception in thread "main" java.lang.NoSuchMethodError: Demo.<init>(Ljava/lang/String;)V
        at ThreadDemo.main(ThreadDemo.java:6)


我的源码
class ThreadDemo
{
        public static void main(String[] args)
        {
                System.out.println("def");
                Demo d1 = new Demo("旺财");
                //Demo d1 = new Demo("jin");
                //Demo d2 = new Demo("bao");
                //d1.run();
                //d2.run();
        }
}


class Demo extends Thread
{
        private String name;
        Demo(String name)
        {
                this.name = name;
        }
        public void show()
        {
                System.out.println(name);
        }
        public void run()
        {
                for (int i = 0; i < 10; i++)
                {
                        for (int j = 0; j < 99999;j++ )
                        {
                                System.out.println(name + i);
                        }
                }
        }
}
我觉得不是我的源码问题,大家有遇到的吗?

4 个回复

倒序浏览
打扰各位了,刚我试着将Demo类改名就把问题解决了,可是我这java文件夹中没有叫Demo的类啊,问题出在哪里?
回复 使用道具 举报
MVP 中级黑马 2014-11-15 18:52:09
藤椅
class Demo extends Thread   这不就是Demo类嘛!
回复 使用道具 举报
恩,明白了,因为我的另一个demo类就在配置的classpath路径中,所以会重复。
回复 使用道具 举报
是不是你的文件中的demo.class文件已经有了。可能出现Demo类的重复,所以建议你进行分包。将不同的java源文件根据需求放在不同的包中
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马