W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗(yàn)值獎勵
Java支持三種不同生存期的變量:
在創(chuàng)建實(shí)例時(shí)創(chuàng)建類的成員變量,并且當(dāng)對象被銷毀時(shí)被銷毀。未顯式分配值的所有成員變量在聲明期間自動分配一個(gè)初始值。成員變量的初始化值取決于成員變量的類型。
下表列出了成員變量的初始化值:
元素類型 | 初始值 |
---|---|
byte | 0 |
short | 0 |
int | 0 |
long | 0L |
float | 0.0f |
double | 0.0d |
char | "\u0000" |
boolean | false |
對象引用 | null |
在以下示例中,變量x在聲明變量時(shí)設(shè)置為20。
public class Main{ int x = 20; }
如果您不設(shè)置它們,以下示例顯示默認(rèn)值。
class MyClass { int i; boolean b; float f; double d; String s; public MyClass() { System.out.println("i=" + i); System.out.println("b=" + b); System.out.println("f=" + f); System.out.println("d=" + d); System.out.println("s=" + s); } } public class Main { public static void main(String[] argv) { new MyClass(); } }
輸出:
方法的自動變量在入口時(shí)創(chuàng)建方法,并且僅在該方法的執(zhí)行期間存在。只有在執(zhí)行該方法時(shí)才能訪問自動變量。(此規(guī)則的一個(gè)例外是內(nèi)部類)。
自動變量(方法局部變量)不由系統(tǒng)初始化。自動變量必須在使用前顯式初始化。例如,這個(gè)方法不會編譯:
public class Main{ public int wrong() { int i; return i+5; } }
編譯上面的代碼時(shí)的輸出:
這里只是一個(gè)類變量的一個(gè)副本,它存在,而不管該類的實(shí)例數(shù)。 靜態(tài)變量在類加載時(shí)初始化; 這里,當(dāng)Main類被加載時(shí),y將被設(shè)置為30。
public class Main{ static int y = 30; }
this
引用當(dāng)前對象。
this
可以在任何方法中使用來引用當(dāng)前對象。
以下代碼顯示如何使用 this 關(guān)鍵字。
// A use of this. Rectangle(double w, double h) { this.width = w; // this is used here this.height = h; }
使用 this
引用隱藏的實(shí)例變量。
成員變量和方法參數(shù)可以具有相同的名稱。在這種情況下,我們可以使用它來引用成員變量。
Rectangle(double width, double height) { this.width = width; this.height = height; }
以下示例顯示如何使用此引用實(shí)例變量。
class Person{ private String name; public Person(String name) { this.name = name; } public String getName() { return name; } public void setName(String name) { this.name = name; } } public class Main{ public static void main(String[] args) { Person person = new Person("Java"); System.out.println(person.getName()); person.setName("new name"); System.out.println(person.getName()); } }
上面的代碼生成以下結(jié)果。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: