導航:首頁 > 編程語言 > java靜態類變數

java靜態類變數

發布時間:2023-01-12 13:20:21

java中靜態變數和靜態方法分別有什麼特

靜態變數
可以將靜態變數理解為類變數(與對象無關),而實例變數則屬於一個特定的對象。
靜態變數有兩種情況:
靜態變數是基本數據類型,這種情況下在類的外部不必創建該類的實例就可以直接使用
靜態變數是一個引用。這種情況比較特殊,主要問題是由於靜態變數是一個對象的引用,那麼必須初始化這個對象之後才能將引用指向它。因此如果要把一個引用定義成static的,就必須在定義的時候就對其對象進行初始化。

靜態方法
與類變數不同,方法(靜態方法與實例方法)在內存中只有一份,無論該類有多少個實例,都共用一個方法。
靜態方法與實例方法的不同主要有:
靜態方法可以直接使用,而實例方法必須在類實例化之後通過對象來調用。
在外部調用靜態方法時,可以使用「類名.方法名」或者「對象名.方法名」的形式。實例方法只能使用後面這種方式。
靜態方法只允許訪問靜態成員。而實例方法中可以訪問靜態成員和實例成員。
靜態方法中不能使用this(因為this是與實例相關的)。

㈡ java 靜態變數和靜態常量

㈢ java靜態類變數問題

在構造子類對象的時候會調用父類的無參構造函數..
因此
ch1=new Child();時會調用父類的的無參構造函數
public Parent() {
counter++;
this.id=counter;
this.name="Unknow";
}
counter進行了加一操作變成了1

ch2=new Child(ch1);時先調用父類無參構造函數
counter又進行了一次加一操作變成了2
然後執行Child(child ch)構造函數本身的內容.
public Child(Child ch) {
counter++;
this.id=counter;
}
此時counter再次加一就成了為3..此時的ch2的id被賦予當前counter的值即3
因此結果是
there're 3 Person
ch2.id=3

㈣ java中為什麼每個類都有靜態變數class

Java所有的類(自定義和已定義的)都繼承了Object類
也就是說Object類是所有類的基類(父類)
Object類中定義了這個靜態變數;其子類也繼承了這個靜態變數
所有的類都能通過.class得到類名信息

㈤ java中成員變數和靜態變數的區別是什麼

JAVA成員變數和靜態變數的區別:
1,成員變數所屬於對象。所以也稱為實例變數。
靜態變數所屬於類。所以也稱為類變數。
2,成員變數存在於堆內存中。
靜態變數存在於方法區中。
3,成員變數隨著對象創建而存在。隨著對象被回收而消失。
靜態變數隨著類的載入而存在。隨著類的消失而消失。
4,成員變數只能被對象所調用

靜態變數可以被對象調用,也可以被類名調用。
所以,成員變數可以稱為對象的特有數據,靜態變數稱為對象的共享數據。

㈥ java 類變數 靜態變數

publicclassDemo
{
privateinta;//實例變數
privatestaticinta;//靜態變數(也叫類變數)
publicvoidfun1(){
//這個是實例方法
}
publicvoidstaticfun2(){
//這個是靜態方法(類方法)
}
}
publicstaticvoidmain(String[]args){
//這里調用實例方法
Demodemo=newDemo();
demo.fun1();

//這里調用靜態方法
Demo.fun2();

}

㈦ 在java語言中,靜態變數和普通變數有什麼區別

靜態變數是從屬於類的,在java虛擬機載入的時候就會在內存中載入這個變數,可以用類直接調用。
而普通的變數是從屬於對象的,只有用對象來使用

閱讀全文

與java靜態類變數相關的資料

熱點內容
德語小說pdf 瀏覽:123
陝西聯通dns伺服器地址 瀏覽:937
js表格即時編譯 瀏覽:302
51單片機串口拓展 瀏覽:305
重裝系統後加密圖片損壞 瀏覽:463
電腦怎麼放大縮小app窗口 瀏覽:523
教育十APP學校怎麼更改 瀏覽:821
空調外機壓縮機熱保護 瀏覽:754
winlinux雙系統卸載 瀏覽:239
如何對安卓應用反編譯 瀏覽:410
鯤鵬pc伺服器是什麼 瀏覽:572
一級防震梁箍筋加密 瀏覽:928
linuxxampp64位 瀏覽:728
西安哪個app能買到東西 瀏覽:457
eps命令鍵 瀏覽:38
塑料文件夾的尺寸 瀏覽:210
君威壓縮機電磁閥 瀏覽:945
安卓6手機為什麼不能用app 瀏覽:860
什麼java編譯器支持中文 瀏覽:564
香港伺服器如何做代理 瀏覽:201