我需要傳遞一個類,以便我可以訪問其靜態變量。 實施例:android - 通過類作爲參數訪問靜態變量
Class FirstClass
{
static int x = 1;
}
Class SecondClass
{
static int x = 2;
}
我在另一個類中的方法(其將通過的Firstclass和二等均可使用),但它需要訪問靜態變量,這裏是與邏輯的僞代碼:
public static void process(Class anyClass){
anyClass.x;
}
這看起來不錯,不幸的是它拋出了一個NoSuchFieldException,儘管該靜態字段確實存在。 – lorraine
對,對不起。由於'getField'只適用於可公開訪問的字段。您需要將字段設置爲public(或者protected,如果訪問者位於同一個類中),或者使用'getDeclaredField'代替。 – onon15