Overload是重载,Override是覆盖的,也就是重写。
重载Overload表示同一个类中可以有多个名称相同的方法,但这些方法的参数列表各不相同(即参数个数或类型不同)。这个好理解。。。 重写Override表示子类中的方法可以与父类中的某个方法的名称和参数完全相同,通过子类创建的实例对象调用这个方法时,将调用子类中的定义方法,这相当于把父类中定义的那个完全相同的方法给覆盖了,这也是面向对象编程的多态性的一种表现。
Overload重载的例子。。。。。。。
package Demo;
public class Demo {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
show(3);
show(3,5);
show(3,4,5);
}
private static void show(int i) {
System.out.println(i);
}
private static void show(int i, int j) {
System.out.println(i+j);
}
private static void show(int i, int j, int k) {
System.out.println(i+j+k);
} }
结果:
3
8
12
Override覆盖的例子。。。。。。。。。。。。。
package Demo;
public class Demo {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Zi z = new Zi();
}
}
class Fu{
Fu(){
System.out.println("fulei");
}
Fu(int x){
show(7);
System.out.println(x);
}
public void show(int i) {
System.out.println("打印父类这"+i);
}
}
class Zi extends Fu{
Zi() {
show(8);
System.out.println("zilei");
}
public void show(int i) {
System.out.println("打印子类这"+i);
}
}
结果:
fulei
打印子类这8
zilei
|