码迷,mamicode.com
首页 > 编程语言 > 详细

S2/JAVA/03-多态

时间:2016-06-06 00:54:07      阅读:166      评论:0      收藏:0      [点我收藏+]

标签:

多态:同一个实现接口,使用不同的示例而执行不同的操作。

 

子类转换成父类时的规则:

将一个父类的引用指向一个子类对象,称为向上转型(upcasting),自动进行类型转换。

此时通过父类引用变量调用的方法是子类覆盖或继承父类的方法,不是父类的方法。

此时通过父类引用变量无法调用子类特有的方法。

 

实现多态的三个条件:

继承的存在(继承是多态的基础,没有继承就没有多态)。

子类重写父类的方法(多态下调用子类重写后的方法)。

父类引用变量指向子类对象(之类的到父类的类型转换)。

 

当向上转型发生后,将无法调用子类特有的方法。但是当需要调用子类特有的方法时可以通过将父类再转换为子类来实现。

将一个指向子类对象的父类引用赋给一个子类的引用,称为向下转型,此时必须进行强制类型转换。

 

Instanceof运算符

语法:对象    instanceof     类或接口

该运算符用来判断一个对象是否属于一个类或者实现了一个接口,结果为truefalse

 

使用instanceof运算符时,对象的类型必须和instanceof的第二个参数所指定的类或接口在继承树上有上下级关系,否则会出现编译错误。例如,pet  instanceof  String会出现编译错误。

Instanceof通常和强制类型转换结合使用。

S2/JAVA/03-多态

标签:

原文地址:http://www.cnblogs.com/water5832/p/5562308.html

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