Java 无法访问类型为的封闭实例。我一直试图改变一切,但没有结果

Java 无法访问类型为的封闭实例。我一直试图改变一切,但没有结果,java,multithreading,Java,Multithreading,我一直在尝试运行多线程,但我得到了一个错误。有人能帮我吗?我一直在更改孔,但我没有找到解决问题的方法:“没有可访问的programa4类型的封闭实例。必须使用programa4类型的封闭实例来限定分配(例如x.new A()其中x是programa4的一个实例 谢谢大家 public class programa4 { public static void main(String[] args) { int t=Integer.parseInt(args[0]); int x

我一直在尝试运行多线程,但我得到了一个错误。有人能帮我吗?我一直在更改孔,但我没有找到解决问题的方法:“没有可访问的programa4类型的封闭实例。必须使用programa4类型的封闭实例来限定分配(例如x.new A()其中x是programa4的一个实例 谢谢大家

public class programa4 {

public static void main(String[] args) {

    int t=Integer.parseInt(args[0]);
    int x=1;            

    String z=args[1];

            while(x<=t){
                System.out.println("Iniciando hilo "+x);
                new hilo(z).start();
                x=x+1;
            }
}   
class hilo extends Thread{
int num;
String z;
hilo(String z){
    this.num=Integer.parseInt(z);
}

public void run() {
    int t=1;
    while(t<=num){
    System.out.println("Generando iteracion: "+ t);
    double x=Math.random()*10;
    System.out.println("Esperando "+ x +" segundos");
    try {
        Thread.sleep((long)x*1000);
        System.out.println("Iteracion terminada");


    } catch (InterruptedException e) {
        System.out.println("Se interrumpio.");
    }
    t=t+1;
    }
    System.out.println("Terminado hilo.");

}
}   
}
公共类程序4{
公共静态void main(字符串[]args){
int t=Integer.parseInt(args[0]);
int x=1;
字符串z=args[1];

当(xAs
hilo
programa4
内部类时,必须先有
programma4
的实例,然后才能为其创建内部类

使其成为
静态类hilo
违反了这一要求

static class hilo extends Thread {
另一种方法是创建一个
程序4
将其附加到

new programa4().new hilo(z).start();

由于
hilo
programa4
内部类,因此必须先有
programma4
的实例,然后才能为其创建内部类

使其成为
静态类hilo
违反了这一要求

static class hilo extends Thread {
另一种方法是创建一个
程序4
将其附加到

new programa4().new hilo(z).start();

静态类hilo扩展线程
-添加静态。可能重复的
静态类hilo扩展线程
-添加静态。可能重复的