因?yàn)樽罱鼘W(xué)習(xí)的內(nèi)容好多都有所相似的地方,,自己腦子里總是感覺(jué)很亂,,所以今天在這里梳理一下這兩個(gè)知識(shí)點(diǎn),不到位,、不準(zhǔn)確的地方希望各位看官多多指教,、不吝賜教 重載(Overload)I .定義:在一個(gè)類中定義多個(gè)相同名稱的方法,即為重載。 II. 要求: 1)方法名稱相同 2)參數(shù)列表不同 3)與訪問(wèn)修飾符,、返回值無(wú)關(guān) public class TestOverload{
public static void main(String[] args) {
Student s = new Student();
s.a();
s.a("jack");
s.a("tom", 18);
}
}
class Student{
String name;
int age ;
double score;
***//同一個(gè)類中 方法名稱相同 參數(shù)列表不同構(gòu)成重載 (參數(shù)類型,、個(gè)數(shù)任何一個(gè)不同或者都不相同均構(gòu)成重載)***
**//與訪問(wèn)修飾符、返回值類型均無(wú)關(guān)?。,。?*
//無(wú)參方法
public void a(){
System.out.println("我是老大");
}
//一參方法
public String a(String name ){
System.out.println("老二叫" name);
return name;
}
//兩參方法
void a(String name , int age){
System.out.println("一個(gè)" age "歲的" "老三叫" name);
}
}
重寫(Override)I.定義:又稱覆蓋,,是子類繼承父類的屬性和方法后,,子類的方法可能會(huì)因子類自身特點(diǎn)而特殊化,但又是子類所必須具有的方法,,因此通過(guò)子類繼承父類后,,重新寫一個(gè)新的方法,來(lái)達(dá)到覆蓋原有父類方法的目的,。 II.要求: 方法名,、參數(shù)表、返回值,,必須與父類完全相同,。 訪問(wèn)修飾符應(yīng)與父類相同或比父類更寬泛。
public class TestStudent{
public static void main(String[] args) {
Baby b = new Baby();
b.drink();
}
}
class Father{
String name;
int age ;
public void drink(){
System.out.println("father不需要喝奶");
}
}
class Baby extends Father{
public void drink(){
System.out.println("baby需要喝奶");
}
}
|