如果沒有給成員變量賦初始值,就用類型的默認(rèn)值賦(有一種情況除外:final修飾的成員變量也必須顯式賦值),而局部變量不會賦自動,在一些C語言教材中,局部變量被稱為自動變量,這與可選關(guān)鍵字autodefinition局部變量的使用是一致的,函數(shù)內(nèi)部定義的變量變成了局部變量。
{0}
1、成員變量與 局部變量?語法上,成員變量屬于類,而局部變量是方法中定義的變量或方法的參數(shù);成員變量可以用public、private、static static等修飾符修改,而局部變量不能用訪問控制修飾符和static修改;但是,成員變量和局部變量都可以被final修改。從變量在內(nèi)存中的存儲方式來看:如果一個成員變量用static修飾,那么它屬于一個類;如果它沒有用static修飾,那么它屬于一個實例。該對象存在于堆內(nèi)存中,而局部變量存在于堆棧內(nèi)存中。從變量在內(nèi)存中的生存時間來看,成員變量是對象的一部分,隨著對象的創(chuàng)建而存在,而局部變量隨著方法的調(diào)用而消失。如果沒有給成員變量賦初始值,就用類型的默認(rèn)值賦(有一種情況除外:final修飾的成員變量也必須顯式賦值),而局部變量不會賦自動。
{1}
2、在C語言中, 局部變量的存儲類別 自動默認(rèn)為(B,參考百度百科自動類型:網(wǎng)頁鏈接只用于語句塊內(nèi)部,初始化可以是任意表達式。其特點是在執(zhí)行流進入語句塊時,初始化可以是任意表達式。c語言提供了由存儲描述符auto、register、extern和static描述的四種存儲類別。四個存儲類描述符具有兩個存儲周期:自動存儲周期和靜態(tài)存儲周期。其中auto和register對應(yīng)自動存儲周期。存儲周期為自動的變量在進入聲明該變量的程序塊時建立,在程序塊活動時存在,退出程序塊時撤銷。函數(shù)內(nèi)部定義的變量變成了局部變量。在一些C語言教材中,局部變量被稱為自動變量,這與可選關(guān)鍵字auto definition 局部變量的使用是一致的。
{2。