Java是一種面向對象的編程語言,它支持兩種函數形式:重載與覆蓋。這兩種形式在理解時要分別對待。
重載指的是在一個類中,可以定義多個同名的函數,但他們的參數個數或類型必須不同。換言之,這些函數只是名字相同,但實現是不同的。例如:
public class MyClass{ public int add(int a, int b){ return a + b; } public double add(double a, double b){ return a + b; } public String add(String a, String b){ return a + b; } }
覆蓋指的是子類中的函數可以重寫繼承自父類中的同名函數。覆蓋函數必須與被覆蓋函數的返回值類型、參數列表完全一致。例如:
public class Animal{ public void move(){ System.out.println("Animal can move"); } } public class Dog extends Animal{ public void move(){ System.out.println("Dog can run and walk"); } }
總結來說,重載和覆蓋都是基于同名函數而言的,但是它們的定位不同。重載是在同一個類中定義多個函數,這些函數的名字相同但是參數列表不同;覆蓋是在子類中重新實現父類中的同名函數。
上一篇css計算器如何制作
下一篇css控制取消連接