为什么这个Java枚举代码没有编译?

Bre*_*ius 0 java enums

enum itProfs {  
    private int sal;
    DEVELOPER(30), ANALYST(20); 
    itProfs(int sal){
        this.sal = sal;
    }
    public int getSal(){
        return sal;
    }   
}
Run Code Online (Sandbox Code Playgroud)

是什么原因?

def*_*ale 5

您应该首先放置枚举值.

enum itProfs {  
    DEVELOPER(30), ANALYST(20); 
    private int sal;
    itProfs(int sal){
        this.sal = sal;
    }
    public int getSal(){
        return sal;
    }   
}
Run Code Online (Sandbox Code Playgroud)

  • 只是因为.这就是语法的定义方式.否则他们本可以做到,但他们没有 (2认同)