




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Java
基础知识多态www.安博思软多态(Polymorphism)所谓多态,是指把类中具有相似功能的不同方法使用同一个方法名来实现,从而可以使用相同的方式来调用这些具有不同功能的同名方法。简单来说就是多态是具有表现多种形态的能力的特征。www.安博思软彩色打印机打印机黑白打印机打印效果:彩色打印效果:黑白打印打印Java中的引用变量有两个类型,一个是编译时的类型,一个是运行时的类型,编译时的类型由声明该变量时使用的类型决定,运行时的类型由实际赋给该变量的对象决定。如果编译时的类型与运行时的类型不一致就会出现所谓的多态。(Polymorphism)www.为什么会出现多态?安博思软www.编译时多态性(静态绑定)
对于多个同名方法,如果在编译时能够确定执行同名方法中的哪一个,则称为编译时多态性。运行时多态性(动态绑定)如果在编译时不能确定,只能在运行时才能确定执行多个同名方法中的哪一个,则称为运行时多态性。多态性有两种:www.classTest
{
voidprint()
{
System.out.println(“hello”);
}
voidprint(Stringx)
{
System.out.println(“hello”+x);
}
publicstaticvoidmain(String[]args)
{
Testts=newTest();
ts.print();
ts.print(“jack”);
}
}
classTest
{
voidprint()
{
System.out.println("helloTest");
}
www.
classAextendsTest
{
voidprint()
{
System.out.println("helloA");
}
publicstaticvoidmain(String[]args)
{
Testa=newA();
a.print();
}
}
静态绑定动态绑定
可以看到一个类中成员方法的重载,也就是一个静态绑定,系统会在你编译的时候根据你调用的方法参数列表来动态的决定调用哪一个函数
可以看到子类覆写了父类的方法,也就是一个动态绑定,系统会在运行时动态的决定调用子类覆写后方法来实现1:继承
2:重写(重写父类继承的方法)
3:父类引用指向字类对象www.多态:实现多态三个条件:安博思软www.JAVA中,一个类之能有一个父类,不能多继承。一个父类可以有多个子类,而在子类里可以重写父类的方法,这样每个子类里重写的代码不一样,自然表现形式就不一样。这样用父类的变量去引用不同的子类,在调用这个相同的方法的时候得到的结果和表现形式就不一样了,这就是多态,相同的消息(也就是调用相同的方法)会有不同的结果多态的实现:通过继承实现www.//子类2
publicclassSon2extendsFather{//重写父类打孩子方法
publicvoidhitChild(){System.out.println("我知道错了,别打了!");
}}//子类3publicclassSon3extendsFather{//重写父类打孩子方法publicvoidhitChild(){System.out.println("我跑,你打不着!");}}//子类1publicclassSon1extendsFather{//重写父类打孩子方法publicvoidhitChild(){System.out.println("我知道错了,别打了!");}}//父类publicclassFather{//父类有一个打孩子方法
publicvoidhitChild(){}System.out.println(“我是父亲,可以打儿子!");}//测试类
publicclassTest{
publicstaticvoidmain(Stringargs〔〕){ Fatherfather; father=newSon1(); father.hitChild(); father=newSon2(); father.hitChild(); father=newSon3(); father.hitChild();}}输出结果:我知道错了,别打了!为什么打我?我做错什么了!我跑,你打不着!都调用了相同的方法,出现了不同的结果!这就是多态的表现!
www.继承单继承一个类只能继承一个父类!接口多实现一个类可以同时实现多个接口!一个接口类型变量也可以指向其实现类的实例,这也是多态的一种表现。多态的实现:通过接口实现www.//类2publicclassdaughter2implementsPetInterFace{//实现接口方法publicvoidpet(){
System.out.println(“父亲宠爱我!");}}
//测试类publicstaticvoidmain(String[]args){
PetInterFacedg1=newdaughter1();dg1.Pet();
PetInterFacedg2=newdaughter2();dg2.Pet();
}
}//类1publicclassdaughter1implementsPetInterFace{//实现接口方法publicvoidpet(){System.out.println(“父亲溺爱我!");}}//新接口publicinterfacePetInterFace{
//新功能方法publicvoidpet();}输出结果:父亲溺爱我!
父亲宠爱我!1).应用程序不必为每一个派生类(子类
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2030羊羔绒长袖衫行业市场发展分析及投资前景研究报告
- 2025-2030维德内酯行业市场现状供需分析及投资评估规划分析研究报告
- 2025-2030线性偏振器行业市场现状供需分析及重点企业投资评估规划分析研究报告
- 2025-2030管道保温材料行业市场现状供需分析及投资评估规划分析研究报告
- 2025-2030立方氮化硼单晶行业市场现状供需分析及重点企业投资评估规划分析研究报告
- 2025-2030社交网站行业发展分析及投资战略研究报告
- 2025-2030碳水化合物酶的制备行业市场现状供需分析及投资评估规划分析研究报告
- 2025-2030眉毛生长产品行业市场现状供需分析及重点企业投资评估规划分析研究报告
- 2025-2030皮衣产业规划专项研究报告
- 2025-2030电视剧行业市场深度分析及供需形势与投资价值研究报告
- 99(03)S203 消防水泵接合器安装(含2003年局部修改版)
- 【配套K12】人美版小学五年级下册美术期末知识点
- 4-甲基-2-戊醇-理化性质及危险特性表
- 厦门市水资源公报(2023年)
- 刑法学(上册)马工程课件 第1章 刑法概说
- GB/T 1041-2008塑料压缩性能的测定
- 输变电工程标准化施工作业卡-线路施工部分
- 【公开课】复调音乐的巡礼+课件-高一音乐人音版必修音乐鉴赏
- 江西住建云-建设项目数字化审图·项目监管一体化平台-建设单位用户手册
- 《哈姆莱特》同步练习-统编版高中语文必修下册
- 三字经1-36课教案
评论
0/150
提交评论