利用反射獲取Java類中的靜態(tài)變量名及變量值的簡單實(shí)例
JAVA可以通過反射獲取成員變量和靜態(tài)變量的名稱,局部變量就不太可能拿到了。
public class Test { public static void main(String[] args) throws Exception { // TODO Auto-generated method stub //獲取所有變量的值 Class clazz = Class.forName("com.qianmingxs.ScoreTable"); Field[] fields = clazz.getFields(); for( Field field : fields ){ System.out.println( field.getName() + " " +field.getInt(clazz) ); } //獲取單個(gè)變量的值 /*Class clazz = Class.forName("com.qianmingxs.ScoreTable"); Field field = clazz.getField("FIVE"); System.out.println( field.getInt(clazz));*/ } }
其中要查看的Java類是:
public class ScoreTable { private ScoreTable() {} public final static int FIVE = 100;//成5 public final static int DOUBLE_ALIVE_FOUR = 99;//雙活4(分析對手用) public final static int ALIVE_FOUR_AND_DEAD_FOUR = 98;//活4死4(對手分析用) public final static int ALIVE_FOUR_AND_ALIVE_THREE = 96;//活4活3(分析對手用) public final static int ALIVE_FOUR_AND_DEAD_THREE = 95;//活4死3(分析對手用) public final static int ALIVE_FOUR_AND_ALIVE_TWO = 94;//活4活2 public final static int ALIVE_FOUR = 93;//活4 public final static int DOUBLE_DEAD_FOUR = 92;//雙死4 public final static int DEAD_FOUR_AND_ALIVE_THREE = 91;//死4活3 public final static int DEAD_FOUR_AND_ALIVE_TWO = 90;//死4活2 public final static int DOUBLE_ALIVE_THREE = 80;//雙活3 public final static int ALIVE_THREE_AND_DEAD_THREE = 70;//活死3 public final static int HALF_ALIVE_FOUR = 65;//半活4(類似○○ ○形),優(yōu)先級小于活4 public final static int ALIVE_THREE = 60;//活3 public final static int DEAD_FOUR = 50;//死4 public final static int DOUBLE_ALIVE_TWO = 40;//雙活2 public final static int DEAD_THREE = 30;//死3 public final static int ALIVE_TWO = 20;//活2 public final static int DEAD_TWO = 10;//死2 public final static int SINGLE = 0;//單個(gè) }
以上這篇利用反射獲取Java類中的靜態(tài)變量名及變量值的簡單實(shí)例就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
BufferedReader中read()方法和readLine()方法的使用
這篇文章主要介紹了BufferedReader中read()方法和readLine()方法的使用方式,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-04-04java用LocalDateTime類獲取當(dāng)天時(shí)間、前一天時(shí)間及本周/本月的開始和結(jié)束時(shí)間
這篇文章主要給大家介紹了關(guān)于java使用LocalDateTime類獲取當(dāng)天時(shí)間、前一天時(shí)間及本周/本月的開始和結(jié)束時(shí)間的相關(guān)資料,文中通過代碼示例介紹的非常詳細(xì),需要的朋友可以參考下2023-08-08SpringBoot項(xiàng)目使用slf4j的MDC日志打點(diǎn)功能(最新推薦)
這篇文章主要介紹了SpringBoot項(xiàng)目使用slf4j的MDC日志打點(diǎn)功能,本文通過示例代碼給大家介紹非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-06-06java微信小程序步數(shù)encryptedData和開放數(shù)據(jù)解密的實(shí)現(xiàn)
這篇文章主要介紹了java微信小程序步數(shù)encryptedData和開放數(shù)據(jù)解密的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-09-09Java中使用JWT生成Token進(jìn)行接口鑒權(quán)實(shí)現(xiàn)方法
這篇文章主要介紹了Java中使用JWT生成Token進(jìn)行接口鑒權(quán)實(shí)現(xiàn)方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-08-08SpringBoot實(shí)現(xiàn)接口版本控制的示例代碼
這篇文章主要介紹了springboot如何實(shí)現(xiàn)接口版本控制,接口版本控制,比如微服務(wù)請求中某個(gè)接口需要升級,正常做法是升級我們的版本,文中有詳細(xì)的代碼示例供大家參考,具有一定的參考價(jià)值,需要的朋友可以參考下2024-03-03Java中十進(jìn)制和十六進(jìn)制的相互轉(zhuǎn)換方法
下面小編就為大家?guī)硪黄狫ava中十進(jìn)制和十六進(jìn)制的相互轉(zhuǎn)換方法。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2016-08-08ArrayList?foreach循環(huán)增添刪除導(dǎo)致ConcurrentModificationException解決分
這篇文章主要為大家介紹了ArrayList?foreach循環(huán)增添刪除導(dǎo)致ConcurrentModificationException解決分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪<BR>2023-12-12