Java多态

来源:互联网 发布:阿里云服务器类型 编辑:程序博客网 时间:2024/06/05 14:06

对Java多态的理解,首先要理解这句提纲挈领的话:“多态将做什么和怎么做分离了!”;

// Son继承于FatherFather father = new Son();
左边的声明就是明确father这个引用能够提供的服务,右边就是具体的服务由Son这个类的对象来提供。

--域没有多态:

  这道腾讯出的面试题就反应了该问题。

--方法才有多态:

----方法才有可能多态

----private关键字,static关键字,final关键字会关闭多态


所以解答多态的题的时候,解题思路是:

第1步、看引用是被声明为哪个类的引用,来确定到底应该调用哪个方法,

第2步、然后分析该方法是否支持多态,

--第2.1步、如果不支持,那么直接输出。

--第2.2步、如果支持,就查看实际指向的对象,如果是引用类型的子类看其是否覆盖了同样的方法,如果覆盖了就调用覆盖后的方法。

可以用上面的解题思路来解答下面这道面试题:曾经面试Naver  China成都中心的时候也遇见过一个类似的。

多态调用面试题