その時に書きたいものを書きます

その時に書きたいものを書くんです

Enumについて

Enumはクラス?

Enumは内部的にはクラスとのこと。

public enum Macross{
    Sheryl,
    Ranka,
    Alto
}

って定義すると

public class Macross extends java.lang.Enum{
    public static final Macross Sheryl
    public static final Macross Ranka
    public static final Macross Alto
    public static final Macross[] values();
    public static final Macross valueOf(java.lang.String);
}

みたいなクラスができるイメージ。

メソッドの定義

enumにはメソッドも定義できる。

public enum Macross {
    SHERYL;
    
    public String sing(){
        return "northern cross";
    }
}

mainメソッドからこんな感じで使える。ちなみにこれSingletonにもなっておるよ。

public class Main {
    public static void main(String[] args) {
        Macross mayn = Macross.SHERYL;
        System.out.println(mayn.sing()); 
    }
}