- Java語言的作用域有哪些及如何分類 推薦度:
- Java語言的作用域有哪些及分類知識 推薦度:
- 相關(guān)推薦
Java語言的作用域及分類
在程序源碼中,聲明在不同地方的變量具有不同的作用域,例如:局部變量、全局變量等。在Java語言中,作用域是由花括號“{...}”的位置決定的,它決定了其定義的變量名的可見性與生命周期。
在Java語言中,變量類型主要有三種:
成員變量、靜態(tài)變量和局部變量。
類的成員變量的作用范圍與類的實(shí)例化對象的作用范圍相同,當(dāng)類被實(shí)例化時,成員變量就會在內(nèi)存中分配空間并初始化,直到這個被實(shí)例化對象的生命周期結(jié)束時,成員變量的生命周期才結(jié)束。
被 static修飾的成員變量稱為靜態(tài)變量或全局變量,與成員變量不同的是,靜態(tài)變量不依賴于 特定的實(shí)例,而是被所有實(shí)例所共享,也就是說,只要一個類被加載,JVM就會給類的靜態(tài)變量分配存儲空間。因此,可以通過類名和變量名來訪問靜態(tài)變量。
局部變量的作用域與可見性為它所在的花括號內(nèi)。
此外,成員變量也有四種作用域,它們的區(qū)別見下表:
(1)public。表明該成員變量或方法對所有類或?qū)ο蠖际强梢姷模蓄惢驅(qū)ο蠖伎梢灾?接訪問。
(2)private。表明該成員變量或方法是私有的,只有當(dāng)前類對其具有訪問權(quán)限,除此之外 的其他類或者對象都沒有訪問權(quán)限。
(3)protected。表明該成員變量或方法對自己及其子類是可見的,即自己和子類具有權(quán)限 訪問。除此之外的其他類或?qū)ο蠖紱]有訪問權(quán)限。
(4)default。表明該成員變量或方法只有自己和與其位于同一包內(nèi)的類可見。若父類與子 類位于同一個包內(nèi),則子類對父類的default成員變量或方法都有訪問權(quán)限;若父類與子類位 于不同的package (包)內(nèi),則沒有訪問權(quán)限。
需要注意的是,這些修飾符只能修飾成員變量,不能用來修飾局部變量。private與protected 不能用來修飾類 (只有 public 、abstract 或 final 能用來修飾類)。
【Java語言的作用域及分類】相關(guān)文章:
Java語言的作用域有哪些及如何分類09-09
Java語言的作用域有哪些及分類知識08-07
C語言作用域入門學(xué)習(xí)05-21
淺談Java語言中static的作用08-10
php變量作用域的深入解析07-18
java集合分類總結(jié)09-25