快速問題,但我無法在文檔中找到答案。Android中的靜態字段壽命
Android應用程序中靜態字段的使用壽命是多少?什麼時候被初始化,什麼時候被銷燬?最終屬性是否修改其生命週期?那麼私人/公共?只要應用程序實例處於活動狀態,它們就活着嗎?
舉兩個例子:
public class DemoClass {
static int one = 1;
static int three = DemoActivity.two + one;
}
public class DemoActivity extends Activity {
public static int two = DemoClass.one + DemoClass.one;
private static final int four;
public static int five;
public void onCreate(Bundle b) {
four = two + two;
five = DemoClass.three + DemoClass.one + DemoClass.one;
}
}
編輯:還有什麼是靜態字典?
例如,
public class AnotherDemoActivity extends Activity {
public static ArrayList<String> strings = new ArrayList<String>();
@Override public void onCreate(Bundle b) {
strings.add("test");
strings.add(new String("another test");
strings.add(new DemoClass());
}
的 「字符串」 元素將活多久呢?
「靜態範圍是直到類是未展開。」那是什麼意思?如果我從來沒有實例化那個類會怎麼樣? – StackOverflowed
您不需要實例化一個類來訪問靜態變量,它們不是實例範圍的,它們是類的範圍。 – kosa