继承发生在子父类继承中,多态展现于此
**
继 承 类:
**
一个类,通过 extends 关键字继承另一个类,则拥有父类中的方法
自动转型:父类 对象变量名=new 子类();继承后,子类可以是父类类型 。
A 子类重写父类中的方法:
重写(overwrite):在子类中重新定义父类中的方法,必须和父类中的方法同名同参。重
写后,调用时,即调用子类中的方法,未重写,则调用父类中的方法。
public class Animal {
public void eat(String s){
System.out.println("动物吃"+s);
}
public void move(int len){
System.out.println("动物叫"+len+"次");
}
}
public class cat extends Animal{
String name = "mimi";
String sex = "femal";
public void eat(String s) {
String mString = "小猫吃"+s;
System.out.println(mString);
}
public static void main(String[] args) {
Animal cat = new cat();
cat.eat("鱼");
}
}
继承有什么好处呢?多态!
同一类型的对象,具有不同行为,程序因此灵活 。
1.如果子类重写,则调用子类中的方法!
2.子类重写的方法,必须和父类中的方法定义相同 !
3.如果子类没有重写,则调用父类中的方法!
**
B 重写
**
在一个类内部,有多个同名方法,但参数类型不同。调用时,根据传入的参数,调用对应的方法。
对比: