Java中的多态有哪些表现形式

学习java语言的过程中,对于多态的理解是非常关键的,理解了多态也就意味着打开了理解java各种“抽象”的大门。
所谓的“多态”,简单的理解就是对象在不同情况下的不同表现,具体体现在定义和功能两个方面,简单的总结一下,多态可以用“三个定义和两个方法”来总结。三个定义分别是父类定义子类构建、接口定义实现类构建和抽象类定义实体类构建,而两个方法分别是方法重载和方法重写。
方法重载的概念比较好理解,简单的说,就是在同一个类中,定义了多个方法,具有相同的方法名称和不同的参数列表。方法重载只看名称和参数列表,其他的都不看,包括返回值类型、属性修饰符、范围限定等,这些都不影响方法重载的概念。
方法重写可以用“一个前提、三个相同和两个规定”来总结,前提是在继承体系结构下,三个相同代表子类中定义的方法与父类中的方法,具有相同的名字、参数列表和返回值类型,两个规定分别是子类方法的范围限定不能比父类方法的范围小,以及不能抛出更多的异常。当然,final类型的方法和static类型的方法是不能被重写的。
父类定义子类构建还是比较好理解的,但是如果采用了这种定义方式,也就意味着对象本身并不能调用子类独有的方法,而如果调用的方法恰好覆盖了父类中的方法,则还涉及到“虚方法”的概念,实际上执行的是子类方法体中的功能语句。
接口定义实体类构建是java中非常常见的一种多态形势,而且由于接口属于全抽象方式,所以这种方式可以在很大程度上提升程序的“健壮性”,也是比较推荐的编程方式。采用接口定义类构建的方式,可以在很大程度上提升代码的可复用性。
抽象类定义实体类构建是接口定义方式的一种扩展,通常可以用在代码的模块内部,从而提升代码的内聚性。
来源:搜狐

IEEE表示华为及其员工可以继续成为IEEE标准协会的成员
LED显示屏发展历程
MIUI10稳定版第二批共有21款机型成功推送
基于摄像头的路径信息采集系统的简易设计与实现
东安动力汽车高性能增压DAM12T发动机解析
Java中的多态有哪些表现形式
DS28C36安全认证器的安全引导和安全下载
我国家电回收处理方面的法律法规需完善,才能让山寨家电彻底消亡
MCU在家电设计中的应用
国产CPU有哪些品牌?六大国产CPU大比拼!
瑞萨G2UL开发板-U盘读写速度测试
宏集直驱技术解决方案帮您轻松实现锂电池叠片工艺
让人恐惧的是,机器狗已经能做这种事了
网友感叹2019年HTC的春天还会来吗 官方回应无法回答
2020年11家企业固态电池领域的新动向
物联网的发展现状及物联网有哪些基础道德问题
电容耦合电路的特点
如何利用ST MCSDK实现直流无刷电机控制
中国技术前沿站之新能源与智能网联
应用在智能洗衣机触摸屏上的电容式触摸芯片