方法的匹配顺序
来源:互联网 发布:inodesetup mac 编辑:程序博客网 时间:2024/04/28 13:48
匹配顺序: this.show(O), super.show(O),
this.show(super(O)), super.show(super(O))
1)先确保参数完全匹配O的前提下,依次匹配this与super。
2)再考虑参数用super(O)渐近匹配O,依次匹配this与super
3)当存在子类覆盖父类方法时,根据new子类实例的原则,先调子类方法。
class A { public String show(D obj){ return ("A and D"); } public String show(A obj){ return ("A and A"); } }
class B extends A{ public String show(B obj){ return ("B and B"); } public String show(A obj){ return ("B and A"); } }
class C extends B{ }
class D extends B{ }
public class TestDT{ public static void main(String args[]){ A a1 = new A(); A a2 = new B(); B b = new B(); C c = new C(); D d = new D(); System.out.println(a1.show(b)); // ① A and A System.out.println(a1.show(c)); // ② A and A System.out.println(a1.show(d)); // ③ A and D System.out.println(a2.show(b)); // ④ B and A System.out.println(a2.show(c)); // ⑤ B and A System.out.println(a2.show(d)); // ⑥ A and D System.out.println(b.show(b)); // ⑦ B and B System.out.println(b.show(c)); // ⑧ B and B System.out.println(b.show(d)); // ⑨ A and D }}
阅读全文
0 0
- 方法的匹配顺序
- 括号的匹配,顺序栈方法
- 方法重载类型匹配顺序
- 项目3 -- 括号的匹配 顺序栈方法
- 项目3 -- 括号的匹配 顺序栈方法 .
- 相同数组不同的顺序的匹配
- 顺序栈的括号匹配算法
- !顺序串的各种模式匹配运算
- 顺序串的模式匹配 朴素算法
- C++ 函数调用的匹配顺序
- C++ 函数调用的匹配顺序
- C++ 函数调用的匹配顺序
- Servlet的匹配规则和顺序
- Tomcat url-pattern 的匹配顺序
- Servlet的匹配规则和顺序
- 无顺序约束的字符串匹配问题
- 顺序串的实现(插入、截取、匹配)
- Android drawable图标的匹配顺序
- H5实战(一):照片墙效果
- PhantomJS、Selenium、Chrome驱动的mac版安装和配置
- Thread(target=Test1())中target写函数名时带括号和不带括号有什么区别?
- 多线程之Thread和Runable选择及原理(二)
- CodeForces 534A A. Exam
- 方法的匹配顺序
- 1005. Spell It Right (20)
- 作业管理
- 基于koa+mysql+vue2.0+Element阳光内容管理系统
- P2P流媒体开源项目介绍
- Html5做webapp中界面适配的问题总结
- 去哪——身份证分组
- 「python」文件的打开与关闭
- (一)Google发布了一个新的Tensorflow物体识别API