本文目錄一覽:
- 1、Java 變數到底要如何初始化
- 2、在java中八種基本數據類型在數組初始化中默認值是多少
- 3、java 基本類型默認值
- 4、Java:關於基本數據類型的默認值,以布爾為例
- 5、什麼事Java的基本類型?這些基本類型的默認值是什麼?
- 6、Java各類型的初始值
Java 變數到底要如何初始化
不同的變數初始化方法不同。
變數包括:
類的屬性,或者叫值域
方法里的局部變數
方法的參數
對於第一種變數,Java虛擬機會自動進行初始化。如果給出了初始值,則初始化為該初始值。如果沒有給出,則把它初始化為該類型變數的默認初始值。
int類型變數默認初始值為0
float類型變數默認初始值為0.0f
double類型變數默認初始值為0.0
boolean類型變數默認初始值為false
char類型變數默認初始值為0(ASCII碼)
long類型變數默認初始值為0
所有對象引用類型變數默認初始值為null,即不指向任何對象。注意數組本身也是對象,所以沒有初始化的數組引用在自動初始化後其值也是null。
對於兩種不同的類屬性,static屬性與instance屬性,初始化的時機是不同的。instance屬性在創建實例的時候初始化,static屬性在類載入,也就是第一次用到這個類的時候初始化,對於後來的實例的創建,不再次進行初始化。這個問題會在以後的系列中進行詳細討論。
對於第二種變數,必須明確地進行初始化。如果再沒有初始化之前就試圖使用它,編譯器會抗議。如果初始化的語句在try塊中或if塊中,也必須要讓它在第一次使用前一定能夠得到賦值。也就是說,把初始化語句放在只有if塊的條件判斷語句中編譯器也會抗議,因為執行的時候可能不符合if後面的判斷條件,如此一來初始化語句就不會被執行了,這就違反了局部變數使用前必須初始化的規定。但如果在else塊中也有初始化語句,就可以通過編譯,因為無論如何,總有至少一條初始化語句會被執行,不會發生使用前未被初始化的事情。對於try-catch也是一樣,如果只有在try塊里才有初始化語句,編譯部通過。如果在catch或finally里也有,則可以通過編譯。總之,要保證局部變數在使用之前一定被初始化了。所以,一個好的做法是在聲明他們的時候就初始化他們,如果不知道要出事化成什麼值好,就用上面的默認值吧!其實第三種變數和第二種本質上是一樣的,都是方法中的局部變數。只不過作為參數,肯定是被初始化過的,傳入的值就是初始值,所以不需要初始化。
在java中八種基本數據類型在數組初始化中默認值是多少
Java定義了8個簡單的數據類型:位元組型(byte),短整型(short),整型(int),長整型(long),字元型(char),浮點型(float),雙精度型(double),布爾型(boolean).
除了boolean默認false,char–〉/u0000,其他的都為0
java 基本類型默認值
你定義的a是臨時變數,這種臨時變數是不會初始化的,只有類的成員變數才會被初始化。比如
class test {
private int a;
}
然後你創建一個test對象,new test(),那麼這個對象的屬性a就會被默認初始化為0。
Java:關於基本數據類型的默認值,以布爾為例
波爾類型的默認值是false;
其餘的7種基本類型默認值:
byte是 (byte)0;
short是 (short)0;
int是 0;
long是 0L;
float 是0.0f;
double 是0.0d;
char是 \u0000。
什麼事Java的基本類型?這些基本類型的默認值是什麼?
基本數據類型有
double,float,
byte,short,int,long
char,
boolean
基本就double,int,char,boolean比較常用
double預設值 0.0
int預設值是0
char預設值是 ‘u0000’
boolean預設值是false
Java各類型的初始值
基本數據類型作為類的成員時,
即使沒有對其進行初始化,
java也會確保它有一個默認值,如下:
基本類型的初始值 基本類型 默認值
boolean false
char \u0000(null)
byte (byte)0
short (short)0
int 0
long 0L
float 0.0f
double 0.0d
上面的默認值,是當變數作為類的成員使用時才有的,
java這樣做是保證基本類型的成員變數得到初始化,
防止產生程序錯誤,
但這些值在實際的程序中可能都是不合理的,
所以最好明確的給出初始值。
上面的默認值對在程序中非成員變數就不適用了,
非成員變數如果不明確給出初始值,就可能是任何值。
在java程序編譯時會提示你一個錯誤,而不是c++中的警告。
至於那些應用類型,像數組,對象啦,有些複雜,根據你的類型而定,對象一般弄人為null,
數組根據你的類型,按照基本數據類型的默認值來初始化……
明白了么?
本文來自CSDN博客,轉載請標明出處:
原創文章,作者:RNPAA,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/331353.html