java - 为什么java枚举中的一些常量字段不是值?

标签 java enums constants

有关 ScrollPane 的文档滚动条策略不使用枚举值(任何其他类也不使用常量字段值),这有什么原因吗?

这些常量字段值的值是否有更深入的含义,或者它们只是按升序排列?因为在我看来,像 public Sc​​rollPane(intscrollbarDisplayPolicy) 这样的构造函数看起来并不像 public Sc​​rollPane(ScrollPane.ScrollbarDisplayPolicyscrollbarDisplayPolicy)

那样有意义。

或者这只是为了没有多个枚举而只有几个值?

最佳答案

答案很简单:enum仅在Java 5中引入。这些常量比这更古老。

不幸的是,没有办法在不破坏代码兼容性的情况下改造 API。 (针对新功能改进 API 听起来一般来说是一项不可能完成的任务,但实现这一点的一个例子是在 Java 5 中引入泛型。)

关于java - 为什么java枚举中的一些常量字段不是值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33868903/

相关文章:

java - Spring Integration Java DSL - 捕获在 Enum.valueof() 中使用的 header

java - 打印枚举变量和值

Objective-C:打印枚举值

c++ - 如何从枚举类型中获取枚举值?

C++ 对指向结构的 const 指针数组进行排序

java - 使用 Java 代理在类加载期间更改静态字段的值

java - 在http请求连接器中传递动态查询参数和路径参数

constants - 用 Julia 评估非理性

c++ - C/C++ 中的常量

java - 使用声明式事务管理时如何显式提交 spring db 事务?