Подтвердить что ты не робот

Лучше ли использовать class.isEnum() или instanceof Enum?

У меня есть объект. Я хочу проверить, не является ли это типом перечисления. Есть два способа сделать это.

object.getClass().isEnum()

или

object instanceof Enum

Лучше?

4b9b3361

Ответ 1

По-моему object instanceof Enum лучше по нескольким причинам:

  • Очень очевидно, что здесь задается: "это перечисление"?
  • Он не рискует NullPointerException (если object есть null, он просто оценит false)
  • Это короче.

Единственная причина, по которой я мог бы использовать isEnum(), - это получить доступ к объекту Class, а не к конкретному экземпляру.