java面向?qū)ο?在Java中同類中的靜態(tài)方法能否調(diào)用類成員變量呢?為什么?
在Java中同類中的靜態(tài)方法能否調(diào)用類成員變量呢?為什么?不,因?yàn)镴ava中的靜態(tài)內(nèi)容是類級別的,也就是說,它們可以用類名或任何對象名訪問。無論以何種形式訪問,它們都是同一事物。一般來說,成員變量是指
在Java中同類中的靜態(tài)方法能否調(diào)用類成員變量呢?為什么?
不,因?yàn)镴ava中的靜態(tài)內(nèi)容是類級別的,也就是說,它們可以用類名或任何對象名訪問。無論以何種形式訪問,它們都是同一事物。一般來說,成員變量是指對象層次,即每個(gè)對象所擁有的成員變量是獨(dú)立的、不同的,屬于對象本身。與訪問范圍相比,它更為靜態(tài),靜態(tài)可以被任何對象訪問并且是相同的,成員變量是每個(gè)對象所擁有的。所以,為什么“靜態(tài)方法不能調(diào)用類成員變量”是因?yàn)橐L問成員變量,必須有一個(gè)“實(shí)例化對象”。除非在靜態(tài)方法中創(chuàng)建當(dāng)前類的實(shí)例對象,否則不能直接調(diào)用成員變量,因?yàn)樗恢莱蓡T變量屬于哪個(gè)實(shí)例對象。在成員方法中,可以確定屬于該成員的所有變量和方法屬于同一個(gè)對象,這可以用來表示當(dāng)前對象。