歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> Linux編程 >> Java非靜態變量初始化

Java非靜態變量初始化

日期:2017/3/1 9:14:53   编辑:Linux編程

Java費靜態變量的初始化分為兩種情況,一種是局部變量,一種是類的域。

對於類的域,java在類初始化時,會為變量賦一個初始值。對於基本數據類型,java會將初始值設置為二進制0,具體為將boolean設置為false,將byte設置為0,將char設置為0(即空格),short設置為0,int設置為0,long設置為0,float設置為0.0f,都變了設置為0.0。對於引用類型也會將其初始值設置為二進制0,即null。

而對於局部變量加入你在申明變量的時候沒有為其設置初始值,java將認為你這是個粗心導致的錯誤,所以java會給你一個編譯異常。

Talk is weak, show me your code.

package InitializationAndCleanup;

public class VariableInit {
private boolean mBoolean;
private byte mByte;
private short mShort;
private char mChar;
private int mInt;
private long mLong;
private float mFloat;
private double mDouble;

private VariableInit mInit;

public void function() {
int i;
//i ++; // compile error
}

public void printInitValue() {
System.out.println("boolean : " + mBoolean);
System.out.println("byte : " + mByte);
System.out.println("short : " + mShort);
System.out.println("char : [" + mChar + "]");
System.out.println("int : " + mInt);
System.out.println("long : " + mLong);
System.out.println("float : " + mFloat);
System.out.println("double : " + mDouble);
System.out.println("reference variable : " + mInit);
}

public static void main(String[] args) {
new VariableInit().printInitValue();
}

}

輸出:

boolean : false
byte : 0
short : 0
char : [ ]
int : 0
long : 0
float : 0.0
double : 0.0
reference variable : null

Copyright © Linux教程網 All Rights Reserved