HashMap Java - 错误信息

HashMap Java - Error message

下面是我的代码:

import java.util.HashMap;

    public interface Action {
        abstract void run(String s);
    }

public static void main (String[] args){

    HashMap<String, Action> actions = new HashMap<String, Action>();
    actions.put("visible", new Action() {
        public void run(String s) {
            System.out.println("Running 'visible' on: " + s);
        }
    });
    String input[];
    input = new String[2];
    input[0] = "sun";
    input[1] = "visible";
    actions.get(input[1]).run(input[0]);
}

对于行:“public static void main (String[] args){

我收到以下错误:

这条线有多个标记

语法错误,插入 "enum Identifier" 以完成 EnumHeader

令牌“]”的语法错误,:: 应在此令牌之后

令牌语法错误 "void",@预期

代码对我来说似乎没问题。有人可以帮我解决这个错误吗?

您的 public static void main 方法必须属于 class。

public class SomeClass 
{

    public static void main (String[] args) {
    ...
    }

}

您必须将 Action 界面移动到不同的源文件,或者将其嵌套在包含主要方法的 class 中。