這段代碼里面,hobby的是用static修飾的.如果不用這個修飾, 直接定義全局變量,下面不是一樣可以使用嗎?這樣做的意義是什么
1 回答

lzjccc
TA貢獻23條經驗 獲得超7個贊
1.在程序運行時的區別:實例變量屬于某個對象的屬性,必須創建了實例對象,其中的實例變量才會被分配空間,才能使用這個實例變量。靜態變量不屬于某個實例對象,而是屬于類,所以也稱為類變量,只要程序加載了類的字節碼,不用創建任何實例對象,靜態變量就會被分配空間,靜態變量就可以被使用了。總之,實例變量必須創建對象后才可以通過這個對象來使用,靜態變量則可以直接使用類名來引用。
2.靜態變量是包含此變量的類一旦被編譯就分配了空間且之后地址不變,而實例變量在類實例化之后才分配空間,每實例化一次他就分配一次空間,所以靜態變量不需要類實例化就可以用,而實例變量不可以
添加回答
舉報
0/150
提交
取消