【问题标题】:using enum in a class?在课堂上使用枚举?
【发布时间】:2010-08-18 06:41:27
【问题描述】:
public Car{

public enum Color{RED,BLUE};
private Color color;

Car(Car.Color c)
{
this.color =c

}


}

这个方法对吗?

【问题讨论】:

标签: java enums


【解决方案1】:

它是正确的。 虽然我会将枚举保存在单独的文件 Color.java 中,因为它非常通用。

【讨论】:

  • 我还会重命名枚举以避免与java.awt.Color发生冲突
【解决方案2】:

看起来不错。

你还有什么其他选择?

【讨论】:

    【解决方案3】:

    是的,没关系。您也可以将 getter 暴露给私有成员。所以其他班级可以看到汽车的颜色。

    【讨论】:

    • 颜色很可能不需要曝光。公开枚举以便任何调用者都可以将实例传递给构造函数仍然有意义。一般来说,任意暴露的信息越少,类设计就越健壮。
    【解决方案4】:

    杰普,看起来不错。

    【讨论】:

      【解决方案5】:

      您可以将enum 放在一个类中,就像您可以在一个类中创建另一个类一样(这将是一个nested class,如果它不是静态的,它就是一个内部类)。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2023-03-25
        • 2019-05-13
        • 2015-03-31
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多