在類的聲明中,屬性是用變量來表示的。這種變量就稱為實例變量,是在類聲明的內部但是在類的其他成員方法之外聲明的。類的每個對象維護它自己的一份實例變量的副本。
實例變量:定義在類中但在任何方法之外。(New出來的均有初始化)
當一個對象被實例化之后,每個實例變量的值就跟着確定;
實例變量在對象創建的時候創建,在對象被銷毀的時候銷毀;
實例變量的值應該至少被一個方法、構造方法或者語句塊引用,使得外部能夠通過這些方式獲取實例變量信息;
訪問修飾符可以修飾實例變量;
實例變量對於類中的方法、構造方法或者語句塊是可見的。一般情況下應該把實例變量設為私有。通過使用訪問修飾符可以使實例變量對子類可見;
實例變量具有默認值。數值型變量的默認值是0,布爾型變量的默認值是false,引用類型變量的默認值是null。變量的值可以在聲明時指定,也可以在構造方法中指定;
實例變量可以直接通過變量名訪問。但在靜態方法以及其他類中,就應該使用完全限定名:ObjectReference.VariableName。
與局部變量異同
局部變量:定義在方法之中的變量。
1. 局部變量要先賦值,再進行運算,而實例變量均已經賦初值。(這是局部變量和實例變量的一大區別)
2. 實例變量的對象賦值為null。
3. 局部變量不允許范圍內定義兩個同名變量。實例變量的作用域在本類中完全有效,當被其他的類調用的時候也可能有效。
4. 實例變量和局部變量允許命名沖突。