0

我正在编写一个简单的程序来解释线程。

为什么它向我显示以下错误。谁能帮助我。

public class Myth extends Thread {
  public void run() {
    int val=65;
    try {
      for(int i=0;i<26;i++) {
        System.out.println((char)val);
        val++;
        sleep(500);
      }
    }
    catch(InterruptedException e) {
      System.out.println(e);
    }
    // error pops up on this bracket saying class interface or enum expected.
    // error in this line says-- illegal start of expression

    public static void main(String args[]) {
      Myth obj=new Myth();
      obj.start();
    }
  }
}
4

5 回答 5

1

run()方法未正确关闭。之后添加一个额外的结束赞誉System.out.println(e);,你应该很高兴。

于 2012-08-01T07:44:25.900 回答
1

您必须平衡这对打开和关闭的curly大括号。

public class Myth extends Thread{
 public void run(){
   int val=65;
   try{
       for(int i=0;i<26;i++){
         System.out.println((char)val);
         val++;
         sleep(500);
        }
    }catch(InterruptedException e){
       System.out.println(e);
    }
 }

 public static void main(String args[]){
    Myth obj=new Myth();
    obj.start();
 }
}
于 2012-08-01T07:44:53.217 回答
0

下面是更正的代码原因是您的run方法的主体未关闭。

public class Myth extends Thread {

public void run() {

    int val = 65;
    try {

        for (int i = 0; i < 26; i++) {
            System.out.println((char) val);

            val++;

            sleep(500);

        }

    }

    catch (InterruptedException e) {
        System.out.println(e);
    }
}

public static void main(String args[]) // error in this line says-- illegal
                                        // start of expression

{
    Myth obj = new Myth();
    obj.start();
}
}
于 2012-08-01T07:47:58.880 回答
0

main方法被放置在方法内部Myth.run()。因为它不应该是一个类的静态函数。

public class Myth extends Thread {
    public void run(){
        int val=65;
        try {
            for(int i=0;i<26;i++)
            {
                System.out.println((char)val);
                val++;
                sleep(500);
            }
        }catch(InterruptedException e){
            System.out.println(e);
        }
        // error pops up on this bracket saying class interface or enum expected.
        // error in this line says-- illegal start of expression

    }
    public static void main(String args[]){
        Myth obj=new Myth();
        obj.start();
    }
}
于 2012-08-01T07:48:49.190 回答
0

您的 run 方法没有被花括号正确关闭。关闭并编译它,然后它应该没问题。每次打开花括号时关闭花括号是一种很好的做法。然后你开始在它们之间编写代码。这应该可以帮助您避免这种令人尴尬的愚蠢错误。

于 2012-08-01T07:52:07.683 回答