首页 > 其他分享 >多态的概述,优势,类型转换问题

多态的概述,优势,类型转换问题

时间:2022-11-21 22:45:01浏览次数:43  
标签:类型转换 对象 子类 多态 概述 类型 父类

多态的概述,多态的形式

什么是多态

同类型的对象,执行同一个行为,会表现出不同的行为特征

多态的常见

多态中成员访问特点

1.方法调用:编译看左边,运行看右边

2.变量调用:编译看左边,运行 也看左边(多态侧重行为多态)

多态的前提

有继承/实现关系:有父类引用指向子类对象;有方法重写

多态的优势

1.在多态形式下,右边对象可以实现解耦合,便于扩展和维护

2.定义方法时候,使用父类型作为参数,该方法就可以接收这父类的一切子类对象,体现出多态的扩展与便利

多态下会产生的一个问题

多态下不能使用子类的独有功能

多态下引用数据类型的类型转换

自动类型转换(从子到父):子类对象赋值给父类类型的变量指向

强制类型转换吗(从父到子)

1.此时必须进行强制类型转换:子类 对象变量=(子类)父类类型的变量

2.作用:可以解决多态下的劣势,可以实现调用子类独有功能

3.注意:如果转型后的类型和对象真实类型不是同一种类型,那么在转换的时候就会出现ClassCastException

Java建议强制类型转换前使用instanceof判断当前对象的真是类型,再进行强制转换

 

标签:类型转换,对象,子类,多态,概述,类型,父类
From: https://www.cnblogs.com/Surprise7X/p/16913664.html

相关文章

  • 多态之接口类
    用接口,可以让学生继承2个类,接口是一种规范,一种能力,一种扩展usingSystem;namespace多态之接口类{classProgram{staticvoidMain(string[]arg......
  • RDMA 架构与实践(技术详解(一):RDMA概述)
    RDMA,即RemoteDirectMemoryAccess,是一种绕过远程主机OSkernel访问其内存中数据的技术,概念源自于DMA技术。在DMA技术中,外部设备(PCIe设备)能够绕过CPU直接访问......
  • 1、Docker最新入门教程-Docker概述
    1.Docker概述Docker是一个用于开发、运输和运行应用程序的开放平台。Docker使您能够将应用程序与基础架构分开,以便您可以快速交付软件。使用Docker,您可以像管理应用程......
  • Servlet_概述、快速入门
    Servlet_概述server applet概念:运行在服务器端的小程序Servlet就是一个接口,定义了java类被浏览器访问到(tomcat识别)的规则将......
  • Nacos注册中心概述、服务注册、分级存储模型及环境隔离
    目录​​一、Nacos概述​​​​二、服务注册到Nacos​​​​三、Nacos服务分级存储模型​​​​服务集群属性设置​​​​根据集群负载均衡​​​​根据权重负载均衡​​​......
  • test因果推理专题研讨01:因果推理概述
    因果推理本质属于统计学范畴,并试图从根源上对基于相关性的统计学进行改革。当年诞生统计学科时就发生过分歧,因果被压下去了。直到最近,基于相关性的统计方法几乎发展到尽头,......
  • 面向对象进阶(多态&包&final&权限修饰符&代码块)
    ​ 多态:多态是java面向对象三大特性之一多态也就是一个对象的多种形态。前提【重点】        有继承或者实现关系        方法的重写【意义体现:不......
  • Java 网络编程(一)概述
    什么是计算机网络?计算机网络是指将地理位置不同的具有独立功能的多台计算机及其外部设备,通过通信线路连接起来,在网络操作系统,网络管理软件及网络通信协议的管理和协......
  • 109:多态
        多态(polymorphism)是指同一个方法调用由于对象不同可能会产生不同的行为。在现实生活中,我们有很多例子。比如:同样是调用人的休息方法,张三的休息是睡觉,李四的休息......
  • 多态之抽象类
    当父类中的方法不知道如何去实现的时候,可以考虑将父类写成抽象类,将方法写成抽象方法比如:狗狗会叫,猫咪也会叫,可以使用abstract关键字标记一个抽象的动物类,抽象的方法 ......