課程
/后端開發(fā)
/Java
/Java入門第二季
1、為什么要用靜態(tài)方法,能不能舉個例子
2、靜態(tài)方法有什么特殊用途
3、初始化塊,和構(gòu)造方法的功能有什么不同
2015-06-28
源自:Java入門第二季 8-10
正在回答
我也是新手,我就說說就我個人的理解吧。1.靜態(tài)方法是相對于普通方法的一個分類,增加了編程的多樣性;2.靜態(tài)方法(如hello)可以通過類名直接調(diào)用(也可先建立對象然后用對象名調(diào)用)如:HelloWorld.hell0();而普通方法(hello2)需先建立相應(yīng)的對象才能利用對象名經(jīng)行調(diào)用如:HelloWorld Demo=new HelloWorld(); Demo.hello2(); ? 另外靜態(tài)方法中有很多需要注意的地方:1、?靜態(tài)方法中可以直接調(diào)用同類中的靜態(tài)成員,但不能直接調(diào)用非靜態(tài)成員。如果希望在靜態(tài)方法中調(diào)用非靜態(tài)變量,可以通過創(chuàng)建類的對象,然后通過對象來訪問非靜態(tài)變量;2、?在普通成員方法中,則可以直接訪問同類的非靜態(tài)變量和靜態(tài)變量;3、?靜態(tài)方法中不能直接調(diào)用非靜態(tài)方法,需要通過對象來訪問非靜態(tài)方法。
? 對于第三個問題,我的個人看法是:1.初始化塊分為普通初始化塊和靜態(tài)初始化塊,靜態(tài)初始化塊只能對靜態(tài)變量賦初值,普通初始化塊都可以;2.構(gòu)造方法和初始化塊都是對類的成員變量經(jīng)行初始化,只是結(jié)構(gòu)不一樣,另外如果我們在構(gòu)造無參的構(gòu)造方法對成員變量初始化時,系統(tǒng)會自動默認(rèn)賦給成員變量0值,而初始化塊則沒有這個功能,不會默認(rèn)賦給初值。3.我們在main函數(shù)中創(chuàng)建對象時,其實(shí)就是在構(gòu)造方法,相信你也看過前面的視頻了。請多指教!
dongfangliu 提問者
再頂一下……求回答
舉報(bào)
課程升級!以終為始告別枯燥,在開發(fā)和重構(gòu)中體會Java面向?qū)ο缶幊痰膴W妙
3 回答靜態(tài)方法的意義是什么?
3 回答靜態(tài)方法中調(diào)用靜態(tài)方法不可以么?
2 回答普通方法調(diào)用同類中的靜態(tài)和非靜態(tài)方法有什么規(guī)則?
2 回答靜態(tài)方法的調(diào)用
4 回答靜態(tài)方法的使用
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網(wǎng)安備11010802030151號
購課補(bǔ)貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號
2015-07-23
我也是新手,我就說說就我個人的理解吧。1.靜態(tài)方法是相對于普通方法的一個分類,增加了編程的多樣性;2.靜態(tài)方法(如hello)可以通過類名直接調(diào)用(也可先建立對象然后用對象名調(diào)用)如:HelloWorld.hell0();而普通方法(hello2)需先建立相應(yīng)的對象才能利用對象名經(jīng)行調(diào)用如:HelloWorld Demo=new HelloWorld(); Demo.hello2(); ? 另外靜態(tài)方法中有很多需要注意的地方:1、?靜態(tài)方法中可以直接調(diào)用同類中的靜態(tài)成員,但不能直接調(diào)用非靜態(tài)成員。如果希望在靜態(tài)方法中調(diào)用非靜態(tài)變量,可以通過創(chuàng)建類的對象,然后通過對象來訪問非靜態(tài)變量;2、?在普通成員方法中,則可以直接訪問同類的非靜態(tài)變量和靜態(tài)變量;3、?靜態(tài)方法中不能直接調(diào)用非靜態(tài)方法,需要通過對象來訪問非靜態(tài)方法。
? 對于第三個問題,我的個人看法是:1.初始化塊分為普通初始化塊和靜態(tài)初始化塊,靜態(tài)初始化塊只能對靜態(tài)變量賦初值,普通初始化塊都可以;2.構(gòu)造方法和初始化塊都是對類的成員變量經(jīng)行初始化,只是結(jié)構(gòu)不一樣,另外如果我們在構(gòu)造無參的構(gòu)造方法對成員變量初始化時,系統(tǒng)會自動默認(rèn)賦給成員變量0值,而初始化塊則沒有這個功能,不會默認(rèn)賦給初值。3.我們在main函數(shù)中創(chuàng)建對象時,其實(shí)就是在構(gòu)造方法,相信你也看過前面的視頻了。請多指教!
2015-06-29
再頂一下……求回答