当前位置: 首页 > news >正文

学Java第三十一天----------多态调用成员的特点

一、多态调用成员的特点

成员变量调用:编译看左边,运行也看左边,即获取的是父类的成员变量值

成员方法调用:编译看左边,运行看右边,即运行的是子类的成员方法

二、多态的优势

示例1:上一节的代码

示例2:append后可以有很多类型的参数

示例3:没有写泛型的数组可以add任何类型

三、多态的劣势

因为:

成员变量调用:编译看左边,运行也看左边,即获取的是父类的成员变量值

成员方法调用:编译看左边,运行看右边,即运行的是子类的成员方法

不能使用子类的特有功能,该怎么办呢???

--------->>>进行强制转换,

如何强转???

第一种:Animal  a=new Dog();

              Dog d=(Dog)a;

第二种(常用):使用instanceof关键字

例如:

强转有时会出错,原因:

              Animal  a=new Dog();

              Cat c=(Cat)a;   ----------->>>这样会出错ClassCastException,因为必须要转成Dog类型

http://www.dtcms.com/a/39157.html

相关文章:

  • FastAPI系列:如何响应txt和json文件
  • 回溯算法(C/C++)
  • 萌新学 Python 之模块管理
  • cursor设备ID修改器 支持0.45.x版本
  • Qt Creator + CMake 构建教程
  • 述职报告中,如何平衡展现个人贡献与团队协作的重要性?
  • Python 函数式编程-偏函数
  • uniapp 本地数据库多端适配实例(根据运行环境自动选择适配器)
  • 支持自动化数据回放
  • DeepSeek+谷云科技智能体,快速构建企业知识问答
  • 203、【数组】NLP分词实现(Python)
  • 自学Java-JavaSE基础加强(异常,泛型,集合框架)
  • 传递指针给函数的用法
  • 记录一下在k3s快速创建gitlab
  • 【江科协-STM32】5. 输出比较
  • Deepseek 开源周第一天:FlashMLA
  • 【C++】unordered系列容器的模拟实现
  • 结构型模式---外观模式
  • Vscode编辑器:解读文件结构、插件的导入导出、常用快捷键配置技巧及其常见问题的解决方案
  • 冒泡排序(Bubble Sort)详细教程:Java实现与优化
  • 25中医研究生复试面试问题汇总 中医专业知识问题很全! 中医试全流程攻略 中医考研复试调剂真题汇总
  • 苹果CMS泛目录站群架构:无缓存刷新技术的SEO实战
  • FST离群值分析
  • sql时间函数
  • 深度学习笔记数学方面——矩阵计算,自动求导
  • 脚本无法获取响应主体(原因:CORS Missing Allow Credentials)
  • 【AGI】DeepSeek开源周:The whale is making waves!
  • Kibana:Spotify Wrapped 第二部分:深入挖掘数据
  • 软件测试八股文,软件测试常见面试合集【附答案】
  • OpenCV计算摄影学(5)处理一系列图像(例如视频帧)的非局部均值去噪的函数fastNlMeansDenoisingColoredMulti()的使用