-2

我在线程内创建对象时遇到问题,我尝试删除新线程的创建,然后它工作正常,但是我需要那里的线程用于以后的进程。

...
    Thread add = new Thread(){   
        Editor tool = new Editor();
        tool.addModule("modules.csv");
    } 
.... 

类编辑器确实存在,并且代码提取的编辑器和类都来自扩展线程,但是我得到的唯一错误消息是该标识符是预期的。有任何想法吗?谢谢

4

2 回答 2

1

以下应该工作:

Thread add = new Thread(){

        @Override public void run() 
        {   
           Editor tool = new Editor();
           tool.addModule("modules.csv");
        } 
    }

还有一些建议:

  1. 了解 Java 语法
  2. 阅读有关匿名类的信息 - 事实上,您在这里所做的是创建一个扩展java.lang.Thread的匿名类。
  3. 使用 IDE(如chrylis的回复中所述) - 帮助您立即了解语法错误。
  4. 如果您使用的是 Java 的更高版本,我建议您继续使用Executors。这提供了一种将并发相关方面与实际业务逻辑分离的干净方法。
于 2013-11-08T04:47:19.990 回答
0

您正在尝试将似乎是该run()方法的预期内容转储到类主体中。您发布的实际代码看起来基本上没用,但我认为您的意思是

Thread add = new Thread() {
    @Override public void run() {
        Editor tool = new Editor();
        tool.addModule("modules.csv");
    }
}

我强烈建议使用 IDE,例如 Eclipse;它不仅会捕获并解释这个错误,而且会首先为您提供适当的骨架。

于 2013-11-08T04:41:48.020 回答