類方法:又叫做靜態(tài)方法
對象方法:又叫實例方法,非靜態(tài)方法
訪問一個對象方法,必須建立在有一個對象的前提的基礎上
訪問類方法,不需要對象的存在,直接就訪問
步驟1:類方法
類方法:又叫做靜態(tài)方法
對象方法:又叫實例方法,非靜態(tài)方法
訪問一個對象方法,必須建立在有一個對象的前提的基礎上
訪問類方法,不需要對象的存在,直接就訪問
package?charactor;?public?class?Hero?{????public?String?name;????protected?float?hp;?????//實例方法,對象方法,非靜態(tài)方法????//必須有對象才能夠調用????public?void?die(){????????hp?=?0;????}?????????//類方法,靜態(tài)方法????//通過類就可以直接調用????public?static?void?battleWin(){????????System.out.println("battle?win");????}?????public?static?void?main(String[]?args)?{???????????Hero?garen?=??new?Hero();???????????garen.name?=?"蓋倫";???????????//必須有一個對象才能調用???????????garen.die();???????????????????????Hero?teemo?=??new?Hero();???????????teemo.name?=?"提莫";???????????????????????//無需對象,直接通過類調用??????????Hero.battleWin();???????????}}
步驟2:調用類方法
和訪問類屬性一樣,調用類方法也有兩種方式
1.對象.類方法
garen.battleWin();
2.類.類方法
Hero.battleWin();
這兩種方式都可以調用類方法,但是建議使用第二種類.類方法的方式進行,這樣更符合語義上的理解。
并且在很多時候,并沒有實例,比如在前面練習的時候用到的隨機數(shù)的獲取辦法
Math.random()
random()就是一個類方法,直接通過類Math進行調用,并沒有一個Math的實例存在。
步驟3:什么時候設計對象方法,什么時候設計類方法
如果在某一個方法里,調用了對象屬性,比如
public String getName(){return name;}
name屬性是對象屬性,只有存在一個具體對象的時候,name才有意義。如果方法里訪問了對象屬性,那么這個方法,就必須設計為對象方法
如果一個方法,沒有調用任何對象屬性,那么就可以考慮設計為類方法,比如
public static void printGameDuration(){System.out.println("已經(jīng)玩了10分50秒");}
printGameDuration打印當前玩了多長時間了,不和某一個具體的英雄關聯(lián)起來,所有的英雄都是一樣的。這樣的方法,更帶有功能性色彩
步驟4:練習-類方法
在一個類方法中,直接調用一個對象方法,
比如在battleWin中調用die()
能否直接調用?為什么?
以上就是深圳達內教育java培訓機構的小編針對“編程基礎之Java類方法”的內容進行的回答,希望對大家有所幫助,如有疑問,請在線咨詢,有專業(yè)老師隨時為你服務。