码迷,mamicode.com
首页 > 其他好文 > 详细

十二、面向对象之多态

时间:2017-08-20 12:24:09      阅读:116      评论:0      收藏:0      [点我收藏+]

标签:强制转换   成员变量   成员   向下转型   变量   访问   重写   属性   面向   


1.多态的概念
一种事物的多种体现形式
方法重载,方法的重写都是多态的体现


2.多态的体现形式
a.父类的引用指向子类的对象
b.接口的引用指向实现类的对象

总结:
a.如果使用了多态,将不能访问子类或者实现类中特有的属性和方法
b.在多态中访问成员变量时,如果子类中出现了和父类重名的成员变量,都访问的是父类中成员变量
c.在多态中调用了方法,只有子类重写了父类中的方法,会调用子类中重写之后的方法,如果没有重写,调用的是父类中的方法

3.使用多态的好处
a.提高了代码的可维护性
b.提高代码的扩展性
c.可以当做形参,接受任意子类的对象或者实现类的对象

4.对象的向上和向下转型
1>对象的向上转型【多态的体现】 父类或者接口 = 子类或者实现类
由子类类型转为父类类型
由实现类型转为接口类型

2>对象的向下转型【类型的强制转换】子类或者实现类 = 父类或者接口
由父类类型转为子类类型
由接口类型转为实现类型

Cat c2 = (Cat)a;
TestImp test1 = (TestImp)z;

注意:对象向下转型的时候,一定要注意类与类之间或者类与接口之间必定存在关系

十二、面向对象之多态

标签:强制转换   成员变量   成员   向下转型   变量   访问   重写   属性   面向   

原文地址:http://www.cnblogs.com/lsp-lsp/p/7343929.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!