方法的過載指的是方法名一樣,但是引數型別不一樣
步驟 1 : attack方法的過載
有一種英雄,叫做物理攻擊英雄 adhero
為adhero 提供三種方法
方法名是一樣的,但是引數型別不一樣public void attack()
public void attack(hero h1)
public void attack(hero h1, hero h2)
在呼叫方法attack的時候,會根據傳遞的引數型別以及數量,自動呼叫對應的方法
步驟 2 : 可變數量的引數public class adhero extends hero
public void attack(hero h1)
public void attack(hero h1, hero h2)
public static void main(string args)
}
這時,可以採用可變數量的引數public void attack(hero h1)
public void attack(hero h1,hero h2)
public void attack(hero h1,hero h2,hero 3)
只需要設計乙個方法
public void attack(hero ...heros)
即可代表上述所有的方法了
在方法裡,使用運算元組的方式處理引數heros即可
步驟 3 : 練習-**public class adhero extends hero
// 可變數量的引數
public void attack(hero... heros)
}public static void main(string args)
}
設計乙個類support (輔助英雄)繼承hero,提供乙個heal(**)方法
對support的heal方法進行過載
heal()
heal(hero h) //為指定的英雄加血
heal(hero h, int hp) //為指定的英雄加了hp的血
java方法過載
方法過載條件 1.必須是同乙個類 2.方法名 也可以叫函式 一樣 3.引數型別不一樣或引數數量不一樣 注 當然不能通過返回值來區分。今天遇到乙個有趣的現象,就是引數是基本型別的情況,我們都知道基本型別可以自動向上轉型,來看看這種情況是怎麼過載的。public class test void test...
Java 方法過載
方法過載 方法名相同,引數列表資料型別不同 例如 package imooc.method public class mathdemo 求兩個double型別的和 public double plus double m,double n 求陣列元素的累加和 public int plus int a...
java方法過載
方法得過載,說的是 方法名稱相同,但是引數 列表不同 引數列表不同指得是 引數個數,引數型別 如下有相同方法名稱printhello方法,方法1和方法2引數個數不同,方法二和方法三引數型別不同 如果存在相同名稱,相同引數列表得方法,會編譯報錯,此過程稱為 過載解析 注意,方法得返回型別不能作為方法過...