Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/400.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 编译错误,找不到符号,构造函数无法应用于给定类型_Java_Compiler Errors - Fatal编程技术网

Java 编译错误,找不到符号,构造函数无法应用于给定类型

Java 编译错误,找不到符号,构造函数无法应用于给定类型,java,compiler-errors,Java,Compiler Errors,我得到两个错误,分别是: ControllingSpeed.java:89: constructor Thread in class Thread cannot be applied to given types Thread th=new Thread(r); ^ required: no arguments found: Runnable ControllingSpeed.java:90: cannot find symbol th.start(r);

我得到两个错误,分别是:

ControllingSpeed.java:89: constructor Thread in class Thread cannot be applied to given types
   Thread th=new Thread(r);
              ^
required: no arguments
found: Runnable
ControllingSpeed.java:90: cannot find symbol
   th.start(r);
     ^
symbol:   method start(Runnable)
location: class Thread
2 errors
我不知道这些错误的原因

// Demo On JSlider

import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
import javax.swing.event.*;
import java.lang.Thread.*;

class ControllingSpeed extends JPanel{

...<snip>...

public void threadForSpeed(final ChangeEvent ce) {   // <----- cause of error ?
    try { 
        Runnable r = new Runnable() {
            public void run() {
                changeSpeed(ce);
            }
        };
        Thread th=new Thread(r);
        th.start(r);                // <---- till here
    } catch(Exception exc) {
        System.out.println(exc);
    }  
}
//在JSlider上演示
导入java.awt.*;
导入javax.swing.*;
导入java.awt.event.*;
导入javax.swing.event.*;
导入java.lang.Thread.*;
类ControllingSpeed扩展了JPanel{
......

public void threadForSpeed(final ChangeEvent ce){/一个错误是
Thread
类的start方法没有参数。它只是:

   th.start();

一个错误是
线程
类的start方法没有参数。它只是:

   th.start();

问题很可能是您在包中的某个地方创建了一个名为
Thread
的类,该类使
java.lang.Thread
类黯然失色。该类(您自己的)可能如下所示:

class Thread {}
    java.lang.Thread th = new java.lang.Thread(r);
尝试使用完整的限定名指定线程类,如下所示:

class Thread {}
    java.lang.Thread th = new java.lang.Thread(r);
此外,
Thread#start()
方法不接受参数,因此从参数中删除
Runnable
“r”:

    th.start();

问题很可能是您在包中的某个地方创建了一个名为
Thread
的类,该类使
java.lang.Thread
类黯然失色。该类(您自己的)可能如下所示:

class Thread {}
    java.lang.Thread th = new java.lang.Thread(r);
尝试使用完整的限定名指定线程类,如下所示:

class Thread {}
    java.lang.Thread th = new java.lang.Thread(r);
此外,
Thread#start()
方法不接受参数,因此从参数中删除
Runnable
“r”:

    th.start();

这是一个错误..但我在错误消息中得到了相同的两个没有
r
的错误。我编辑了我的帖子这是一个错误..但我得到了相同的两个没有
r
的错误消息。我编辑了我的帖子我编辑了我的帖子。早些时候,在编辑帖子之后,我在
start
的参数中传递了
r
,您仍然存在与您最初提到的完全相同的编译错误?我简直不敢相信!应用了严格的编辑将此问题的范围缩小到特定的编译错误。我编辑了我的帖子。早些时候,我在
start
的参数中传递了
r
,在您编辑帖子之后,您仍然拥有完全相同的编译错误你一开始提到的ilation错误?我简直不敢相信!应用了严格的编辑,将问题的范围缩小到具体的编译错误。