java的多态代码例子_java 多态实例代码
多态是同一个行为具有多个不同表现形式或形态的能力。多态就是同一个接口,使用不同的实例而执行不同操作。
多态性是对象多种表现形式的体现,比如:
在现实中,我们按下F1键这个动作:
如果当前在Flash界面下弹出的就是AS 3的帮助文档
如果当前在Word下弹出的就是Word帮助
在Windows下弹出的就是Windows帮助和支持
多态存在的三个必要条件
继承
重写
父类引用指向子类对象
Parent p = new Child();
当使用多态方式调用方法时,首先检查父类中是否有该方法,如果没有,则编译错误;如果有,再去调用子类的同名方法。
例题
package Wangyi;
class Base
{
public void method()
{
System.out.println("Base");
}
}
class Son extends Base
{
public void method()
{
System.out.println("Son");
}
public void methodB()
{
System.out.println("SonB");
}
}
public class Test01
{
public static void main(String[] args)
{
Base base = new Son();
base.method();
base.methodB();
}
}
问这个程序的输出结果。(D)
A. Base SonB
B. Son SonB
C. Base Son SonB
D.编译不通过
解释:
Base base=new Son(); 是多态的表示形式。父类对象调用了子类创建了Son对象。
base调用的method()方法就是调用了子类重写的method()方法。
而此时base还是属于Base对象,base调用methodB()时Base对象里没有这个方法,所以编译不通过。
要想调用的话需要先通过SON son=(SON)base;强制转换,然后用son.methodB()调用。
总结
以上就是本文关于java 多态实例代码的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!
java的多态代码例子_java 多态实例代码相关推荐
- java的多态代码例子_java多态例子,java多态代码实例
下面要给大家分享的是一个多态经典案例,一起来看看这个java多态简单例子吧./*多态的好处:提高了代码的维护性和扩展性: 弊端:父类不能使用子类的特有功能. 要用子类的特有功能,可以: A:创建子类对 ...
- java多态的实现_Java多态的实现机制是什么,写得非常好!
作者:crane_practice www.cnblogs.com/crane-practice/p/3671074.html 2019-06-13 08:46:00 Java多态的实现机制是父类或接 ...
- java 父类引用子类对象_java多态,如何理解父类引用指向子类对象
java多态,如何理解父类引用指向子类对象 要理解多态性,首先要知道什么是"向上转型". 我定义了一个子类Cat,它继承了Animal类,那么后者就是前者是父类.我可以通过 C ...
- java代码讲解_Java基础系列-代码块详解
注:本文出自博主 Chloneda:个人博客 | 博客园 | Github | Gitee | 知乎 前言 Java基础系列,尽量采用通俗易懂.循序渐进的方式,让大家真正理解Java基础知识! 代码块 ...
- java读写锁死锁例子_Java并发关于重入锁与读写锁的详解
这篇文章主要介绍了Java并发编程之重入锁与读写锁,文中相关实例代码详细,测试可用,具有一定参考价值,需要的朋友可以了解下. 重入锁 重入锁,顾名思义,就是支持重进入的锁,它表示该锁能够支持一个线程对 ...
- java对象克隆的例子_Java对象克隆
本篇文章帮大家学习java对象克隆,包含了Java对象克隆使用方法.操作技巧.实例演示和注意事项,有一定的学习价值,大家可以用来参考. Java不提供克隆(复制)对象的自动机制.克隆对象意味着逐位复制 ...
- java开闭原则 例子_Java设计原则—开闭原则(转)
开闭原则(Open Closed Principle)是Java世界里最基础的设计原则,它指导我们如何建立一个稳定的.灵活的系统. 定义: 一个软件实体如类.模块和函数应该对扩展开放,对修改关闭. S ...
- java代码抛出异常_Java中编写代码出现异常,如何抛出异常,如何捕获异常
异常的产生过程解析 先运行下面的程序,程序会产生一个数组索引越界异常ArrayIndexOfBoundsException.我们通过图解来解析下异常产生的过程. 工具类 classArrayTools ...
- php文件缓存代码,php文件缓存实例代码
php教程文件缓存实例代码 缓存在实际使用当中应用很广泛,可以减轻对服务器数据库教程的访问,提高运行速度.目前很多cms内容管理系统中频繁使用缓存机制来提高系统运行的效率 cache.php 代码如下 ...
最新文章
- 元旦去哪玩?用Python告诉你哪些景点爆满!
- pycharm一键调整代码格式(快捷键)
- Django框架进阶
- Qualcomm thermal的介绍
- Gdiplus byte *数据转换为Bitmap类型图片
- C#.NET Thread多线程并发编程学习与常见面试题解析-1、Thread使用与控制基础
- js整体缩小网页_妙用JavaScript实现网页的任意缩放
- 团队第五次 # scrum meeting
- 事业单位非编制值得去吗?
- Android TV 开发 (1)
- webpack入门+路由配置
- JME3中级手册--最佳实践1
- Python数据处理041:数据分析之时间序列
- 基于同源策略对CORS和JSONP的初步认识
- Android-系统服务-ClipboardManager
- 妈妈的味道,从一碗北极虾荠…
- 大数据随记 —— Hadoop 环境搭建
- 显卡驱动装失败问题解决
- 【TouchDesigner】生成艺术
- linux 操作系统 哪个好用,一款非常好看好用的国产Linux操作系统发行版
热门文章
- HDU 1085 Holding Bin-Laden Captive!
- 领域驱动设计之单元测试最佳实践(二)
- html5(八) IndexedDB
- 一步步学习SPD2010--第四章节--创建和修改网页(9)--附上母版页
- 如何调节电脑显示屏来保护双眼的小技巧
- selenium+python,解决selenium弹出新页面,无法定位元素的问题(报错:Unable to locate element:元素)
- 【报告分享】2020年创新报告-埃森哲.pdf(附下载链接)
- 【报告分享】2019全球住宅报告.pdf(附下载链接)
- 王道机试指南读后总结-1
- eclipse maven打包_自动化管理项目,Maven仓库配置、安装和使用