当前位置: 代码迷 >> J2SE >> 牛人进,为什么Thread(Runnable)小弟我如何也传不进
  详细解决方案

牛人进,为什么Thread(Runnable)小弟我如何也传不进

热度:169   发布时间:2016-04-23 20:22:53.0
牛人进,为什么Thread(Runnable)我怎么也传不进?
class ThreadAndRunnable implements Runnable {
    private int x = 0;
    public void run() {
        System.out.println(++x);
    }
}
 
class Test {
    public static void main(String[] args){
        ThreadAndRunnable r = new ThreadAndRunnable();
        for (int i = 0; i < 10; i++) {
            Thread t = new Thread(r);
            t.start();
        }
    }
}

编译后显示:
警告: .\Runnable.class: 主版本 52 比 51 新, 此编译器支持最
  建议升级此编译器。
No.java:12: 错误: 对于Thread(ThreadAndRunnable), 找不到合适
            Thread t = new Thread(r);
                       ^
    构造器 Thread.Thread(ThreadGroup,Runnable,String,long)
      (实际参数列表和形式参数列表长度不同)
    构造器 Thread.Thread(ThreadGroup,Runnable,String)不适用
      (实际参数列表和形式参数列表长度不同)
    构造器 Thread.Thread(Runnable,String)不适用
      (实际参数列表和形式参数列表长度不同)
    构造器 Thread.Thread(ThreadGroup,String)不适用
      (实际参数列表和形式参数列表长度不同)
    构造器 Thread.Thread(String)不适用
      (无法通过方法调用转换将实际参数ThreadAndRunnable转换
    构造器 Thread.Thread(ThreadGroup,Runnable)不适用
      (实际参数列表和形式参数列表长度不同)
    构造器 Thread.Thread(Runnable,AccessControlContext)不适
      (实际参数列表和形式参数列表长度不同)
    构造器 Thread.Thread(Runnable)不适用
      (无法通过方法调用转换将实际参数ThreadAndRunnable转换
    构造器 Thread.Thread()不适用
      (实际参数列表和形式参数列表长度不同)

另外那个警告怎么处理?
------解决方案--------------------



函数里面的变量为局部变量不需要访问修饰符private!!!!!!!!!
------解决方案--------------------
版本升级一下,问题 都会解决的,  现在都java8了
------解决方案--------------------
楼主传入可以参考这个:
public class ThreadAndRunnable{

public static void main(String[] args){  
Test r = new Test();
        for (int i = 0; i < 10; i++) {
            Thread t = new Thread(r);
            t.start();
        }
    }  
}
 
class Test  implements Runnable {
private int x = 0;
    public void run() {
        System.out.println(++x);
    }
}


至于编译器,你升级jdk就行了
  相关解决方案