五(三)、方法
阿新 • • 發佈:2020-07-15
方法:類應該具有的功能;比如 Math.random();Arrays.sort();....
public void eat() {
System.out.println("人可以吃飯");
}
public void talk(String lanuage) {
System.out.println("人可以說話,使用"+lanuage+"語言。");
}
public String getName(){}
1.1方法的宣告:
許可權修飾符 返回值型別 方法名(形參列表){
方法體
};
1.1.1 許可權修飾符 private public 預設 protected
1.1.2 返回值型別 有返回值、沒有返回值;
①若有返回值,在宣告時需要指定返回值型別,在方法中使用return 返回指定型別的變數or常量
②若方法沒有返回值,則方法宣告時使用void來表示,通常沒有返回值的方法中,就不用return返回;如果只用 只能 "return;"表示結束此方法;
1.1.3 我們定義方法該不該有返回值?憑經驗;
1.1.4方法名 屬於識別符號;需要遵循識別符號規範;
1.1.5 形參列表:方法可以宣告0個 1個或者多個形參;格式:資料型別1 形參1,資料型別2 形參二;
1.1.6 方法體:方法功能的體現;
再談方法
1.方法的過載:在同一個類中,允許存在一個以上的同名方法,只用他們的引數個數或者引數型別不同即可。“兩同一不同”
過載的特點:與返回值型別無關,只看引數列表,且引數列表必須不同。呼叫時感覺方法引數列表的不同來區分;
舉例;Arrays.sort,/binerySearch();
判斷是否是過載:跟方法的修飾符、返回值型別,形參變數名,方法體都沒有關係;、
在通過物件呼叫方法時,如何確定指定方法?1.方法名,2.引數列表
2.可變個數的形參,
a.格式:資料型別 ...變數名
b.當呼叫可變個數形參方法時,傳入的引數個數可以使 0個,1個,2個。。。
c.可變個數形參方法與本類方法名相同,形參不同的方法之間構成過載;但是呼叫確定引數的方法
e.可變個數形參在方法的形參中,必須宣告在末尾;
f.可變個數形參在方法的形參中,最多隻能宣告一個可變形參;
public static void main(String[] args) { Day9Method10 day9Method10 = new Day9Method10(); //過載 day9Method10.getSum(1,2);//預設呼叫 getSum(int i, int j)若getSum(int i, int j)註釋掉,則呼叫getSum(double i, double j) day9Method10.show(0, "A","B"); day9Method10.show(0, "A");//優先呼叫確定引數的方法 } public void getSum(int i, int j) { } public void getSum(double i, double j) { } public void getSum(String i, String j) { } //可變個數的形參 str引數個數可變 public void show(int a,String ...str) { System.out.println("可變引數:"+str); for(int i=0;i<str.length;i++) { System.out.println(str[i]); } } public void show(int a,String str) { System.out.println(str); }