課程
/后端開發(fā)
/Java
/Java入門第二季 升級版
怎么回事呢?
2016-05-14
源自:Java入門第二季 升級版 8-9
正在回答
靜態(tài)方法是屬于整個類的、都可以調(diào)用使用它、方法也是如此、
qq_隨想之風_03202251 提問者
流逝的回憶已成空白 回復 qq_隨想之風_03202251 提問者
qq_隨想之風_03202251 提問者 回復 流逝的回憶已成空白
main方法和sum方法是同一個類的靜態(tài)方法,score1和score2是同一個類的靜態(tài)成員,在一個main靜態(tài)方法中調(diào)用sum靜態(tài)方法當然是可以的,但是sum卻不可以調(diào)用main,因為main是入口方法只能有Java虛擬機調(diào)用。
ava中,類不實例化是可以調(diào)用方法的,這種方法叫做靜態(tài)方法,也叫做類方法。類的靜態(tài)方法不屬于類的對象,而屬于類本身,在該類首次使用的時候加載到系統(tǒng)的方法區(qū)中,一般可以使用類名直接調(diào)用類的靜態(tài)方法,而不需要實例化對象。由于靜態(tài)方法并不屬于對象,因此在靜態(tài)方法中無法操作類的普通成員變量,只能操作類的靜態(tài)成員變量。(因為普通成員變量依附于類的對象存在,而類的靜態(tài)方法并不屬于類對象,在類對象被實例化之前靜態(tài)方法就已經(jīng)存在,故在靜態(tài)方法中操作普通成員變量,相當于在無對象的情況下對其中的成員變量進行操作,這是無意義的,同時也不符合面向?qū)ο蟮乃枷?。?br />至于靜態(tài)方法有什么用,上面已經(jīng)提到在靜態(tài)方法中可以操作類的靜態(tài)屬性,而靜態(tài)屬性是類的屬性,可以作為一次程序運行期間的全局變量來使用,因此我認為靜態(tài)方法的主要作用就是對類中靜態(tài)屬性的初始化或者根據(jù)靜態(tài)屬性實現(xiàn)一定的業(yè)務(wù)邏輯
int allScore = sum();簡單來說是給allScore變量賦值,但是賦值的結(jié)果在sum方法當中,所以需要調(diào)用sum()方法
舉報
課程升級!以終為始告別枯燥,在開發(fā)和重構(gòu)中體會Java面向?qū)ο缶幊痰膴W妙
2 回答為什么不用寫類名也可以調(diào)用sum方法?
4 回答int allScore =sum();可以直接調(diào)用sum()方法,不用答案那樣HelloWorld.sun();
4 回答為什么 sum=score1+score2;return sum;這樣不可以
1 回答方法名可以和返回值變量名一樣嗎?
1 回答方法名可以隨意定義嗎
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網(wǎng)安備11010802030151號
購課補貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動學習伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號
2016-05-16
靜態(tài)方法是屬于整個類的、都可以調(diào)用使用它、方法也是如此、
2016-05-14
main方法和sum方法是同一個類的靜態(tài)方法,score1和score2是同一個類的靜態(tài)成員,在一個main靜態(tài)方法中調(diào)用sum靜態(tài)方法當然是可以的,但是sum卻不可以調(diào)用main,因為main是入口方法只能有Java虛擬機調(diào)用。
2016-05-14
ava中,類不實例化是可以調(diào)用方法的,這種方法叫做靜態(tài)方法,也叫做類方法。
類的靜態(tài)方法不屬于類的對象,而屬于類本身,在該類首次使用的時候加載到系統(tǒng)的方法區(qū)中,一般可以使用類名直接調(diào)用類的靜態(tài)方法,而不需要實例化對象。由于靜態(tài)方法并不屬于對象,因此在靜態(tài)方法中無法操作類的普通成員變量,只能操作類的靜態(tài)成員變量。(因為普通成員變量依附于類的對象存在,而類的靜態(tài)方法并不屬于類對象,在類對象被實例化之前靜態(tài)方法就已經(jīng)存在,故在靜態(tài)方法中操作普通成員變量,相當于在無對象的情況下對其中的成員變量進行操作,這是無意義的,同時也不符合面向?qū)ο蟮乃枷?。?br />
至于靜態(tài)方法有什么用,上面已經(jīng)提到在靜態(tài)方法中可以操作類的靜態(tài)屬性,而靜態(tài)屬性是類的屬性,可以作為一次程序運行期間的全局變量來使用,因此我認為靜態(tài)方法的主要作用就是對類中靜態(tài)屬性的初始化或者根據(jù)靜態(tài)屬性實現(xiàn)一定的業(yè)務(wù)邏輯
2016-05-14
int allScore = sum();簡單來說是給allScore變量賦值,但是賦值的結(jié)果在sum方法當中,所以需要調(diào)用sum()方法