簡體   English   中英

Java:枚舉和值類之間的區別(也在使用中)是什么?

[英]Java: What is the difference (also in use) between an enumeration and a value class?

我沒有看到值類和枚舉之間的區別。 如果有人可以告訴我它們之間的區別以及它們的使用差異,那將會很棒。

首先,它不是“價值等級”。 這是一個“基於價值的階級”。 請嘗試使用正確的術語。

Nicolai Parlog的“基於價值觀的課程”博客文章詳細解釋了這些內容的全部內容。 實質上,它們是“值類型”的前身,可能會在未來的Java版本中添加。 (可能是Java 10 - 參見Valhalla項目 。)

enum類型(通常)不是基於值的類的主要原因是它們不一定是不可變的。 不可變性是課程以價值為基礎的關鍵要求之一。 (枚舉的其他方面與要求不完全匹配,但枚舉值的特殊性可能意味着這些並不重要。)

目前,“基於價值的階級”特征沒有直接用途。 但它可能會在未來的Java版本中發揮作用。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM