成人AV在线无码|婷婷五月激情色,|伊人加勒比二三四区|国产一区激情都市|亚洲AV无码电影|日av韩av无码|天堂在线亚洲Av|无码一区二区影院|成人无码毛片AV|超碰在线看中文字幕

類靜態(tài)成員變量初始化 類中的static變量什么時(shí)候初始化?

類中的static變量什么時(shí)候初始化?靜態(tài)變量是靜態(tài)的,因?yàn)樗牡刂吩诔绦虻恼麄€(gè)生命周期中都是靜態(tài)的。也就是說,整個(gè)程序只保留一個(gè)副本。static關(guān)鍵字允許它在不同的函數(shù)調(diào)用之間保持其值。如果靜態(tài)變

類中的static變量什么時(shí)候初始化?

靜態(tài)變量是靜態(tài)的,因?yàn)樗牡刂吩诔绦虻恼麄€(gè)生命周期中都是靜態(tài)的。也就是說,整個(gè)程序只保留一個(gè)副本。static關(guān)鍵字允許它在不同的函數(shù)調(diào)用之間保持其值。如果靜態(tài)變量的值在被訪問后發(fā)生變化,它將保留新值。如果再次訪問該變量,它將保持最新的值classA{公共:私人:}inta::I=1//必須這樣初始化

如果不考慮父類,只需先靜態(tài)初始化,然后非靜態(tài)初始化即可。

靜態(tài)初始化包括靜態(tài)成員變量和靜態(tài)塊的初始化。實(shí)際上,靜態(tài)塊在編譯期間是集中的。

非靜態(tài)初始化包括非靜態(tài)成員變量初始化、非靜態(tài)塊和構(gòu)造方法,編譯后集中在構(gòu)造方法中。

如果沒有相互通話,那就非常簡(jiǎn)單了。首先,靜態(tài)初始化。如果在靜態(tài)初始化過程中調(diào)用了后者呢?!你可以編寫一個(gè)代碼來測(cè)試它:

輸出:

你可以先看到它確實(shí)是靜態(tài)初始化,但是中間有對(duì)構(gòu)造方法的調(diào)用。

雖然編譯器不報(bào)告錯(cuò)誤,但此調(diào)用實(shí)際上是有風(fēng)險(xiǎn)的。

由于靜態(tài)成員變量(如果已設(shè)置)在初始化之前調(diào)用類構(gòu)造函數(shù)(假設(shè)存在依賴關(guān)系),因此該過程實(shí)際上是不可控制的。

看看這個(gè)例子:你能想象這種輸出嗎?

因此,如果必須在靜態(tài)初始化過程中調(diào)用此類的構(gòu)造函數(shù)。

一定要注意初始化順序,準(zhǔn)確到語句。

如何初始化一個(gè)類中的靜態(tài)成員變量?

類靜態(tài)變量在類成員函數(shù)中使用空間靜態(tài)變量只能在該函數(shù)中使用。

兩者都在程序的數(shù)據(jù)區(qū)和全局變量區(qū)生成。