Java中的作用域有哪些


在Java語言中,變量的類型主要有3種:成員變量、靜態變量和局部變量


 

首先說靜態變量跟局部變量


 

靜態變量不依賴於特定的實例,而是被所有實例共享,也就是說,只要一個類被加載,JVM就會給類的靜態變量分配

存儲空間。因此可以通過類名.變量名來訪問靜態變量


局部變量的作用域與可見性為它所在的花括號內


類的成員變量的作用范圍同類的實例化對象的作用范圍相同。當類被實例化的時候,成員變量就會在內存中分配空間,並初始化。

直到類的實例化對象的生命周期結束時,成員變量的生命周期才結束。

作用域與可見性 當前類 同一package 子類 其他package
public
private × × ×
protected ×
default × ×

重點說一下protected和default:

protected:表名成員變量或方法對該類自身,與它在同一個包中的其他類,在其他包中的該類的子類都可見

defaul:表明該成員變量或方法只有自己和與其位於同一包內的類可見。

若父類與子類處於同一包內,則子類對父類的default成員變量或方法都有訪問權限;若父類與子類處於不同的package內,則沒有訪問權限


 

還有需要注意的是,這些修飾符只能修飾成員變量,不能修飾局部變量。

private和protected不能用來修飾類

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM