【问题标题】:Illegal start of expression (nested methods)非法的表达式开始(嵌套方法)
【发布时间】:2021-09-22 22:49:24
【问题描述】:

我得到 Illegal Start of Expression 如下:

Test.java:70: illegal start of expression
  public void sample(){
  ^
Test.java:70: illegal start of expression
  public void sample(){
         ^
Test.java:70: ';' expected
  public void sample(){
                    ^
3 errors

这是代码:

import java.text.*;

import java.util.*;

public class Test {

    public static void main(String args[]) {

        public void sample(){

            System.out.println("Hello Working ....");

        }

    }

}

【问题讨论】:

  • Java 不支持相互嵌套的方法(而且您还缺少该类的右括号)。
  • 根据@KonstantinYovkov 的评论,java 不支持。为了让这个程序正常工作,在 main 之外创建一个方法并在 main 方法中调用它

标签: java


【解决方案1】:

试试这个方法:

import java.text.*;
import java.util.*;

public class Test {

  public static void main(String args[]) {
     System.out.println("Hello Working ....");
  }

  public void sample(){ 
  }
}

【讨论】:

    【解决方案2】:

    Java 不允许在方法中创建方法。这是一般规则

    而是让这个程序正常工作

    试试这个方法:

    public class Test {
        public static void main(String[] args) {
            Test test = new Test();
            test.sample();
        }
    
        public void sample() {
    
            System.out.println("Hello Working ....");
    
        }
    
    
    }
    

    【讨论】:

      【解决方案3】:

      试试下面的代码:

      public class Test {
          public static void main(String args[]) {
              sample();
          }
      
          private static void sample() {
              System.out.println("Hello Working ....");
          }
      }
      

      输出:

      Hello Working ....
      

      【讨论】:

        猜你喜欢
        • 2021-12-01
        • 1970-01-01
        • 2017-02-13
        • 1970-01-01
        • 1970-01-01
        • 2014-03-09
        • 2013-08-11
        相关资源
        最近更新 更多