我舉例在這裏只列舉不同點
class Demo(){
public static int number; //靜態變量
public String name; //普通成員變量
}
不同點:
1,存在的內存區域不同,--成員變量存在於堆內存中,靜態變量存在於靜態區中
2,數量不同: ---- 成員變量是屬於單個對象實例的,有多少個對象同一個成員變量就會創建多少次, 成員變量是和對象一一對應的
但是一個 類 同一個靜態變量只會存在一個,供所有對象使用
3,生命週期不同 ----成員變量隨着對象的創建而存在,隨着對象的消失而消失,靜態變量隨着類的存在而存在,隨着類的消失而消失
4,初始化時機不同 --- 成員變量在對象創建時初始化,靜態變量在類加載的時候初始化