想看重點的,可直接看人話部分。
變量分類:
一、根據數據類型分類:
1.基本數據類型
2.引用數據類型
二、根據類聲明位置分類:
1.成員變量
(1)類變量
(2)實例變量
2.局部變量
三、區分類變量和實例變量:
首先要區分好類和對象!!
- 官方話:
類是對對象的抽象。
對象是對客觀事物的抽象。
類變量也叫靜態變量,也就是在變量前加了static 的變量。
實例變量也叫對象變量,即沒加static 的變量。
所有的實例對象都共用一個類變量,內存中只有一處空間是放這個類變量值的。
如果一個對象把類變量值改了,另外一個對象再取類變量值就是改過之後的了。
(靜態變量並不是說其就不能改變值,不能改變值的量叫常量。 其擁有的值是可變的 ,而且它會保持最新的值。說其靜態,是因爲它不會隨着函數的調用和退出而發生變化。即上次調用函數的時候,如果我們給靜態變量賦予某個值的話,下次函數調用時,這個值保持不變。)
- 人話:
類是規則。
對象是規則下的產品。
類變量是規則的一部分。
實例變量是產品的一部分。
一個規則在制定好了之後,類變量也被制定好了,已經存在。但是實例變量並沒有被創生。
當第一個產品被創造出來的時候,類變量已經存在,實例變量1此時存在。
當第二個產品被創造出來的時候,類變量已經存在,實例變量2此時存在。
當第三個產品被創造出來的時候,類變量已經存在,實例變量3此時存在。
第三個產品將類變量改爲類變量1,
第二個產品的類變量變成類變量1,
第一個產品的類變量變成類變量1。