Java中多态的理解

一开始对多态也是半知半解的,最近又要用到多态,所以又温习了一下

多态是继承中的一种特别的

for example

class FatherClass

{

  function1(){a1}

  function2(){a2}

  function3(){a3}

}

class SonClass extends FatherClass

{

  function1(){b1}  //覆盖父类方法

  function2(){b2}  //覆盖父类方法

  

  function4(){xx}  //新增方法

}

FatherClass fc = new SonClass();    //前后两类型不同就产生多态了(应该说是继承关系的类型,前者一定要是后面的父类)

fc.function1();  //b1功能

fc.function2();  //b2功能

fc.function3();  //a3功能

fc.function4();  //出错啦

父类对象时编译时类型,子类是运行时类型

子类继承了父类的方法,因为父类之下的子类有很多,而且各种不同,

所以子类就会去复写父类中提供的一些方法,以至于子类的方法返回结果和父类不同,

当子类的方法覆盖了父类的方法时,引用对象所指向的是子类此时的方法属性和在父类中没有被覆盖的方法,

而那些子类自己新增加的特殊方法则不体现出来.

简而言之就是多态的出现使相同父类的事务有不同的结果,从而体现出多种状态—->多态!!

,香港服务器,网站空间,虚拟主机会让你的心态更平和更坦然,也会让你心无旁骛,更会让你的心灵得到解脱和抚慰。

Java中多态的理解

相关文章:

你感兴趣的文章:

标签云: