1. 程式人生 > >java 類方法和實例方法 以及 類變量和實例變量

java 類方法和實例方法 以及 類變量和實例變量

ati 所有 ron 變量 執行 成員 退出 strong 修飾

類體中的方法分為實例方法和類方法兩種,用static修飾的是類方法

類方法:

對於類中的類方法,在該類被加載到內存時,就分配了相應的入口地址。從而類方法不僅可以被類創建的任何對象調用執行,也可以直接通過類名調用。類方法的入口地址直到程序退出才被取消。

實例方法:

當類的字節碼文件被加載到內存時,類的實例方法不會被分配入口地址,當該類創建對象後,類中的實例方法才分配入口地址,從而實例方法可以被類創建的任何對象調用執行。需要註意的是,當我們創建第一個對象時,類中的實例方法就分配了入口地址,當再創建對象時,不再分配入口地址,也就是說,方法的入口地址被所有的對象共享,當所有的對象都不存在時,方法的入口地址才被取消。

——————————————————————

成員變量又分為實例變量和類變量,用static修飾的變量是類變量。

類變量:

類中的類變量,在該類被加載到內存時,就分配了相應的內存空間。如果類中的成員變量有類變量,那麽所有對象的這個類變量都分配給相同的一處內存,改變其中一個對象的這個類變量會影響其它對象的這個類變量。也就是說對象共享類變量。

實例變量:

不同的對象的實例變量將被分配不同的內存空間

java 類方法和實例方法 以及 類變量和實例變量