教育行業(yè)A股IPO第一股(股票代碼 003032)

全國咨詢/投訴熱線:400-618-4000

Java培訓(xùn)之java難點解析(二十六)-枚舉

更新時間:2016年03月24日18時53分 來源:傳智播客Java培訓(xùn)學(xué)院 瀏覽次數(shù):

枚舉:關(guān)鍵字 enum
問題:對象的某個屬性的值不能是任意的,必須為固定的一組取值其中的某一個;
解決辦法:
1)、在setGrade方法中做判斷,不符合格式要求就拋出異常;
2)、直接限定用戶的選擇,通過自定義類模擬枚舉的方式來限定用戶的輸入,寫一個Grade類,私有構(gòu)造函數(shù),對外提供5個靜態(tài)的常量表示類的實例;
3)、jdk5中新定義了枚舉類型,專門用于解決此類問題;
4)、枚舉就是一個特殊的java類,可以定義屬性、方法、構(gòu)造函數(shù)、實現(xiàn)接口、繼承類;
------------------------------------------------------------------------------
自動拆裝箱:java中數(shù)據(jù)類型分為兩種 : 基本數(shù)據(jù)類型   引用數(shù)據(jù)類型(對象)
在 java程序中所有的數(shù)據(jù)都需要當(dāng)做對象來處理,針對8種基本數(shù)據(jù)類型提供了包裝類,如下:
int --> Integer
byte --> Byte
short --> Short
long --> Long
char --> Character
double --> Double
float --> Float
boolean --> Boolean
 
jdk5以前基本數(shù)據(jù)類型和包裝類之間需要互轉(zhuǎn):
基本---引用   Integer x = new Integer(x);
引用---基本   int num = x.intValue();
1)、Integer x = 1; x = x + 1;  經(jīng)歷了什么過程?裝箱 à 拆箱 à 裝箱;
2)、為了優(yōu)化,虛擬機為包裝類提供了緩沖池,Integer池的大小 -128~127 一個字節(jié)的大??;
3)、String池:Java為了優(yōu)化字符串操作 提供了一個緩沖池;


本文版權(quán)歸傳智播客Java培訓(xùn)學(xué)院所有,歡迎轉(zhuǎn)載,轉(zhuǎn)載請注明作者出處。謝謝!
作者:傳智播客Java培訓(xùn)學(xué)院
首發(fā):http://m.fskzgqt.cn/javaee 
0 分享到:
和我們在線交談!