HashMap Java - 错误消息

Ken*_*n R -2 java hashmap

以下是我的代码:

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]);
}
Run Code Online (Sandbox Code Playgroud)

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

我收到以下错误:

此行有多个标记

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

令牌"]"上的语法错误,::此令牌后的预期

令牌"void",@ expected上的语法错误

代码对我来说似乎很好.有人可以帮我摆脱这个错误吗?

Era*_*ran 6

您的public static void main方法必须属于一个类.

public class SomeClass 
{

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

}
Run Code Online (Sandbox Code Playgroud)

您必须将Action接口移动到其他源文件,或将其嵌套在包含main方法的类中.