【问题标题】:Is using inner enum and class efficent?使用内部枚举和类有效吗?
【发布时间】:2022-07-06 14:59:53
【问题描述】:

我经常看到某人的代码包含很多内部公共枚举或类。我不知道它是如何在内部工作的。

    public class Person{
        enum gender{
             MALE,
             FEMALE,
            OTHER;
            static getFromString(){
              ....
            }
        }}

所以我只是想知道如果这个 person 类产生很多 person 对象,这样做是否有效。内部枚举和类会继续消耗更多内存吗?

【问题讨论】:

  • “高效” - 你应该停止为此烦恼。相反,请考虑读者的可读性。按照您的想法,效率很少是一个因素。如果,通常只在整个代码库中的一个非常小的位置(通常使用分析器识别)。

标签: java


【解决方案1】:

我认为在成本方面不是效率问题,但使用枚举有一些优势。

  • 类型安全是主要优势之一。当方法接收到枚举时,编译器将检查枚举值是否是枚举类中定义的值之一;否则,如果我们给一个方法一个 String 或一个 int 常量,编译器只会检查 this 是一个 string 还是一个 int。
  • 另一个优点是枚举,因为它们是一个类,可以定义可能有用的方法。
  • 我们还可以在使用 == 比较枚举值时避免 NullpointerException 错误,因为编译器正在比较值。 希望对您有所帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-09-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-10-30
    • 1970-01-01
    相关资源
    最近更新 更多