多态学习笔记

来源:互联网 发布:syntax评分软件下载 编辑:程序博客网 时间:2024/05/29 11:17

多态

 

定义:某一类事物的多种存在形态。

         例:动物里的猫,狗。

         猫这个对象对应的类型是猫类型

         猫x=new 猫();

同时猫也是动物中的一种,也可以把猫称为动物。

动物 y=new 猫();

动物是猫和狗具体事物中抽取出来的父类型。

父类型引用指向了子类对象。

 

对象的向上转型

Animal a=newDog();

对象的向下转型(向下转型必须先要向上转型)

Dog d=(Dog)a;

子类向上转型后的实例,不能访问子类特有的方法。

进行向下转型最好是先用instanceof判断下类型。

         System.out,println(dog instanceof Dog);

System.out,println(dog instanceof Animal);

 

体现:父类或者接口的引用指向或者接收自己的子类对象。

 

作用:多态的存在提高了程序的扩展性和后期可维护性。

 

前提:需要存在继承或者实现关系。

           要有覆盖操作。

 

成员函数:

         编译时:要查看引用变量所属的类中是否有所调用的成员。

         在运行时:要查看对象所属的类中是否有所调用的成员。

成员标量:

         只看引用变量所属的类。

0 0
原创粉丝点击