The*_*111 7 java api int enums constants
我不确定这是否是一个明确的声明,但在我看来,Java API更喜欢枚举上的常量.从我使用的API的部分,我遇到了许多final static int常量,其中enum可以使用.曾经这样的例子我恰好盯着这一刻:
来自java.awt.BasicStroke:
public final static int CAP_BUTT = 0;
public final static int CAP_ROUND = 1;
public final static int CAP_SQUARE = 2;
Run Code Online (Sandbox Code Playgroud)
实际上,我认为我从未见过标准Java API类中使用的枚举.为什么是这样?
我正在为自己的应用程序设计一个API(比Java API小十亿倍,但我仍然想要聪明一点),并试图决定是使用常量int还是枚举. 这篇文章引用了一本我还没有读过的非常受欢迎的书,这本书暗示了enums有很多优点.在同一个线程中大多数其他得分高的答案都同意.那么为什么Java似乎没有使用自己的枚举功能呢?
Jon*_*ory 11
这与常量int比枚举更好无关:只是枚举只是在JDK 5中添加,因此大多数java API是在枚举可用之前编写的:常量int是唯一的选项,因此被使用.
如果重写了java API,它将包含更多的枚举,并且您可以期望在JDK6或更高版本中看到它们出现在API的新增内容中.
你可能应该为你的应用程序使用枚举,它们通常是更好的选择.
| 归档时间: |
|
| 查看次数: |
679 次 |
| 最近记录: |