第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定

靜態(tài)初始化塊

public class cat2{

static int ?f;

static double f2=11.5;

static{

System.out.println("cat2類的整數(shù)f靜態(tài)初始化塊已執(zhí)行。");

int f=11;

}

? ? public void show(){

? ? System.out.println("靜態(tài)變量f:"+f+", ?靜態(tài)變量f2:"+f2);

? ? }

public static void main(String[] args){

cat2 catty= new cat2();

System.out.println(catty.f);

System.out.println("用對象名訪問靜態(tài)變量f2:"+catty.f2);

catty.show();

? ?}

}

運(yùn)行結(jié)果:

cat2類的整數(shù)f靜態(tài)初始化塊已執(zhí)行。

0

用對象名訪問靜態(tài)變量f2:11.5

靜態(tài)變量f:0, ?靜態(tài)變量f2:11.5

為什么會這樣????我的靜態(tài)初始化塊沒寫錯吧??

正在回答

2 回答

你記住在Java中{}通常代表了作用域,我們稱為“塊”,常見的有類,方法,初始化塊,try...catch等。

靜態(tài)初始化塊也是一個獨(dú)立的作用域,所以你可以在其中定義一個同名變量而不報錯,因?yàn)樗屯膺叺膄作用域不同。

不過因?yàn)殪o態(tài)初始化塊是局部作用域,所有可以可以訪問類成員,這時你必須去掉類型聲明,否則會變成變量的聲明而非引用。

2 回復(fù) 有任何疑惑可以回復(fù)我~
#1

司空曙 提問者

謝謝!
2015-08-17 回復(fù) 有任何疑惑可以回復(fù)我~

不能在靜態(tài)初始化快中賦值時添加類型。

static{

System.out.println("cat2類的整數(shù)f靜態(tài)初始化塊已執(zhí)行。");

f=11;

}

這樣就好了

0 回復(fù) 有任何疑惑可以回復(fù)我~

舉報

0/150
提交
取消
Java入門第二季 升級版
  • 參與學(xué)習(xí)       531097    人
  • 解答問題       6280    個

課程升級!以終為始告別枯燥,在開發(fā)和重構(gòu)中體會Java面向?qū)ο缶幊痰膴W妙

進(jìn)入課程

靜態(tài)初始化塊

我要回答 關(guān)注問題
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號