package cn.yyhl.day14;
/*
在父子类的继承关系当中,创建子类对象,访问成员方法的规则:
创建的对象是谁,就优先用谁,如果没有则向上找。
注意:
无论是成员方法还是成员变量,如果没有都是向上找父类,绝对不会向下找子类的。
重写:(override)
概念:在继承关系中当中,方法的名称一样,参数列表也一样。
重写:(Override):方法的名称一样,参数列表也一样。也叫覆盖、覆写。
重载:(Overload):方法的名称一样,参数列表不一样。
方法的覆盖重写特点:创建的是子类对象,就优先使用子类方法。
*/
public class ExtendsMethod {
public static void main(String[] args) {
Zi3 zi = new Zi3();
zi.methodFu();//父类方法执行啦!
zi.methodZi();//子类方法执行啦!
//创建的是new了子类对象,所以优先使用子类方法
zi.method();//子类重名方法执行啦!
}
}
package cn.yyhl.day14;
public class Fu3 {
public void methodFu(){
System.out.println("父类方法执行啦!");
}
public void method(){
System.out.println("父类重名方法执行啦!");
}
}
package cn.yyhl.day14;
public class Zi3 extends Fu3{
public void methodZi(){
System.out.println("子类方法执行啦!");
}
public void method(){
System.out.println("子类重名方法执行啦!");
}
}