java 多态与重载的区别_java实现多态 方法的重写和重载的区别
1.方法的重寫
思路:先寫一個父類People,在類中定義一個 print方法 ,然后寫一個子類 Student 繼承父類,重寫print方法。
//父類
class People{
public void print(){
System.out.println("這是父類的print方法!");
}
}
//子類 繼承父類
class Student extends People{
public void print(){
System.out.println("這是子類的print方法!");
}
}
//測試類
public class Test{
Student t=new Student(); 生成子類的對象
t.print(); //子類對象 調用print方法
}
運行結果: 這是子類的print方法!
分析:子類繼承父類后重寫父類的方法,子類對象調用時,調用的是子類的print方法。
重點: 方法的重寫,不改變方法的 返回值類型,參數列表;改變的只是方法中的內容,這是重寫。
備注:方法重寫后,可用super.方法名();調用父類中未被重寫的方法。
2.方法的重載
思路:先寫一個父類People,在父類中定義多個方法名print相同,但參數列表或返回值類型不同的方法;子類繼承People類。重載這些方法。
public class People {
String name;
int age;
void print(){
System.out.println("姓名:" +name+"年齡:" +age);
}
void print(String a,int b){
System.out.println("姓名:" +a+"年齡:"+b);
void print(String a,int b,intC){
System.out.println("姓名:"+a+"年齡:" +b+"ID號:" +c);
}
void print(String a,int b,doubleC){
System.out.println("姓名:"+a+"年齡:" +b+"ID號:"+c);
}
}
public class Test{
publicstaticvoidmain(String args[])
{Personpl=newPerson();
p1.nanle="李明";
p1.age=22;
p1.print();
p1.print("王小早",19);
p1.print("金波",18,100325);
p1.print("婉寧",25,110903);
}
}
運行結果:
姓名:李明年齡:22
姓名:王小早年齡:l9
姓名:金波年齡:18ID號:10 00325
姓名:婉寧年齡:25ID號:110903
分析:方法的重載,只要方法名相同,返回值類型和參數列表可以不痛。子類繼承父類時,可根據返回值類型 和 參數列表的異同,來決定調用重載的哪個方法。
總結
以上是生活随笔為你收集整理的java 多态与重载的区别_java实现多态 方法的重写和重载的区别的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: android 添加随意拖动的桌面悬浮窗
- 下一篇: 远程桌面服务器office版本,在启用远