1. 方法重写(override): 方法名,返回类型,参数都相同,只有方法体不同,这就构成了方法重写。
2.
方法重载(overload)和方法重写比较(override):方法重载是发生在一个类的内部,方法重写是发生在父类和之类之间。
3.
当两个方法构成重写时,可以在子类方法中通过super.run(), 来调用父类的方法。super.run()语句可以放在子类方法中的任意位置(根据逻辑需要)。
4.
多态(polymorphism): 是基于封装和继承基础之上的,可以用一句话透析多态本质,子类是父类,父类对象引用可以指向子类对象。
5.
Public class poly{
Public static void main(String[] args){
Animal a = new dog();
a.sing();
}
}
Class animal{
Public void sing(){
System.out.println(“Animal is singing”);
}
}
Class dog extends animal{
Public void sing(){
System.out.println(“Dog is singing”);
}
多态和方法重写之间的联系:Animal a = new dog(); a.sing(); 如果在父类Animal中没有定义sing()方法,编译器就会报错,在父类中找不到sing()方法。如果父类中定义了sing()方法,同时在子类中重写了sing();那么调用a.sing();就会调用子类的sing方法。