多态中成员方法的使用特点

/*
在多态的代码当中,成员方法的访问规则是:
看new的是谁,就优先用谁,没有则向上找。

口诀:编译看左边,运行看右边。

对比一下:
成员变量:编译看左边,运行还看左边。
成员方法:编译看左边,运行看右边。
*/
public class Demo02MultiMethod {
public static void main(String[] args) {
Fu obj=new Zi();//多态

obj.method();//父子都有,优先用子
obj.methodFu();//子类没有,父类有,向上找到父类

//编译看左边,左边是Fu,Fu当中没有methodZi方法,所以编译报错。
// obj.methodZi();//错误写法!
}
}
========================================
public class Fu /*extends Object*/ {
int num=10;

public void showNumber(){
System.out.println(num);
}

public void method(){
System.out.println("父类方法");
}

public void methodFu(){
System.out.println("父类特有方法");
}
}
==================================
public class Zi extends Fu {
int num=20;
int age=16;

@Override
public void showNumber() {
System.out.println(num);
}
@Override
public void method(){
System.out.println("子类方法");
}

public void methodZi(){
System.out.println("子类特有方法");
}
}
posted @   开山y  阅读(25)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
点击右上角即可分享
微信分享提示