java中局部變量有沒有默認(rèn)值 局部變量不應(yīng)該沒有默認(rèn)值嗎,但為什么這個數(shù)組有默認(rèn)值?
局部變量不應(yīng)該沒有默認(rèn)值嗎,但為什么這個數(shù)組有默認(rèn)值?靜態(tài)變量只有在第一次遇到時才被初始化,然后狀態(tài)保持不變,因此它們可以用來記錄一些狀態(tài)信息;非靜態(tài)局部變量每次調(diào)用此函數(shù)并進(jìn)入生命周期時都會被初始化
局部變量不應(yīng)該沒有默認(rèn)值嗎,但為什么這個數(shù)組有默認(rèn)值?
靜態(tài)變量只有在第一次遇到時才被初始化,然后狀態(tài)保持不變,因此它們可以用來記錄一些狀態(tài)信息;非靜態(tài)局部變量每次調(diào)用此函數(shù)并進(jìn)入生命周期時都會被初始化。”為什么會導(dǎo)致這種差異?”只要明白“這是不同設(shè)計目的造成的差異”。
成員變量和局部變量的區(qū)別?
1. 類中的不同位置:成員變量:類中的外部方法。局部變量:在方法定義或方法聲明中。
2. 內(nèi)存中的不同位置:成員變量:堆內(nèi)存中。局部變量:在堆棧內(nèi)存中。
3. 生命周期不同:成員變量隨著對象的創(chuàng)建而存在,隨著對象的消失而消失。局部變量:方法調(diào)用時存在,方法調(diào)用后消失。
4. 不同的初始化值:成員變量:使用默認(rèn)值初始化。局部變量:沒有默認(rèn)值初始化。在使用之前,必須對其進(jìn)行定義和分配。5注意:局部變量名可以與成員變量名相同。該方法采用最接近原理。