3

たとえば、以下のコードを参照してください。

public enum Employees {  

    BOB("Bob Barker", "BB", 100);    

    private String fullName; //are these better accessed through public or getFullName() below? 
    private String initials;
    private String age;  

    Employees(String fullName, String initials, int age) {  
        this.fullName = fullName;
        this.initials = initials;
        this.age = age;
    }  

    public String getFullName() {  
        return fullName;
    }  
    //etc ...
}

より正確に、またはより効率的にメモリにアクセスする方法はどれですか?

4

4 に答える 4

1

列挙型の概念を誤解していると思います。列挙型は、変更されない共有インスタンスです。あなたが説明するのは、通常の可変 Java オブジェクトです。したがって、最初にすべきことは、 からenumに切り替えることclassです。

public class Employee {  

    private String fullName;
    private String initials;
    private String age;  

    public Employee(String fullName, String initials, int age) {  
        this.fullName = fullName;
        this.initials = initials;
        this.age = age;
    }  

    public String getFullName() {  
        return fullName;
    }  
    //etc ...
}

次に、クラスを通常のクラスのように使用します。

Employee bob = new Employee("Bob Barker", "BB", 100);

編集

セッターを削除しましたが、それでも、これはまだ私には見えenumません。

于 2013-04-25T11:54:14.610 に答える
1

getter を慣例として使用してください。後日、getter/is を使用する Bean 仕様に依存する jstl/el 内で列挙型を使用しても、不快な驚きはありません。

于 2013-04-25T11:45:37.953 に答える