我們先來看壹個Clothes類的成員變量:
package ch05.sample;
public class Clothes {
String id; //實例變量
private String colorType; //實例變量
private int size; //實例變量
private static String depart; //類變量
final String design="yangzi"; //常量
}
代碼中的實例變量、類變量、常量都屬於成員變量,那麽其區分的依據是什麽?這與變量的修飾符有關系,也就是上面代碼中的private、static、final等修飾符。成員變量的修飾符見表5-1。
表5-1 成員變量的修飾符
修飾符 說明
public 成員變量可以被項目中的任何方法訪問,建議盡量少用
protected 不在同壹個包中的類不能訪問,但子類可以訪問
private 只能在同壹個類中使用
static 類變量,其值為該類的所有對象***享,不會因類的對象不同而不同
final 最終成員變量,其值保持不變,即常量
transient 當對象被持久化時(例如寫入數據庫),該成員變量的值不需要保存
volatile 同步多線程訪問的成員變量的值,以便使不同的線程總是得到 該成員變量的同壹個值。
基本類型的成員變量
java的基本類型可以分為三類,字符類型char,布爾類型boolean以及數值類型byte、short、int、long、float、double。數值類型又可以分為整數類型byte、short、int、long和浮點數類型float、double。
JAVA中的數值類型不存在無符號的,它們的取值範圍是固定的,不會隨著機器硬件環境或者操作系統的改變而改變。
被以上八種基本類型修飾的變量為基本類型的成員變量