关于接口多态,何时使用接口名创建对象?何时使用子类创建对象?

news2024/9/20 6:29:30

接口创建对象只能创建他的实现类,所以会出现两种创建方式:

1、接口 对象名 = new 类名
2、子类对象 对象名 = new 类名

举个例子,swimming是一个接口,flog是他的一个实现类,重写了swimming的eat()方法

子类对象 对象名 = new 类名:

接口 对象名 = new 类名:

利用接口创建的报红:

原因: 使用接口类去引用对象是有前提条件的—实现类中全是接口类的方法的实现,没有自己单独的方法,而这里面flog里面的eat方法是自己独有的,不能调用。

所以:当实现类存在自己的方法时,使用实现类来声明变量

使用接口编程的好处是统一规范化。

会发现无论多少个实现类,无论这些实现类有什么不同,使用接口 对象名 = new 类名; 方式实例化对象都可以调用接口中定义的方法

假如有多个类 比如 E,F,G,H, 共同继承接口A 。都可以用A b=new E()/new F()/ new G() /new H()的 方式来实现。这样如果之前已经有其他类引用了对象b 或者对b有关联操作, 就不需要在其他类里再重复去写针对 e /f/g/h 的方法或者关联代码。只要在主程序把 A b= new A() 改成A b= new E()                      
原文链接:https://blog.csdn.net/qq_41359254/article/details/113529848

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1840542.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

纵观全球经济,为何众多卖家做跨境都要考虑沃尔玛1P?

​​在全球经济的大背景下,跨境电商成为了许多卖家的优先选择,其中沃尔玛1P模式更是备受瞩目。 这一现象的产生,可以归因于四个方面的因素: 一、沃尔玛作为全球最大的零售商之一 ​具有极高的品牌知名度和市场影响力。这为卖家提…

索引与书架、新华字典的爱恨情仇

在MySQL的索引世界中,性能优化一直是开发者们关注的焦点。而索引,作为提升查询速度的关键技术之一,是非常重要的。索引根据存储类型可以分为聚簇索引(聚集)与非聚簇索引(非聚集),它们决定了数据在磁盘上的存储方式和查询时的访问路…

视频去水印网站,视频去水印工具

在当今数字化时代,视频已成为人们生活中不可或缺的一部分。然而,许多视频都带有水印因此,了解并掌握视频去水印的方法变得尤为重要。今天我分享一个视频去水印的简单方法。 打开" 51视频处理官网" 。打开网站后,上传视…

11.【机器学习】十大算法之一随机森林算法原理讲解

【机器学习】十大算法之一随机森林算法原理讲解 一摘要二个人简介三什么是随机森林?3.1 决策树3.2 集成方法3.2.1 Bagging方法3.2.2 Boosting方法 3.3 随机森林算法3.4 随机的含义 四案例演示一4.1 利用随机森林进行特征选择,然后使用SVR进行训练4.2 利用…

罗盘时钟屏保你见过吗?非常有特色的电脑时钟屏保

很多人都用过屏保,印象中系统自带的屏保,款式比较少,就那几款,在桌面飞来飞去的动画,基本都不怎么好看,特别有印象的就是那种泡泡屏保,这个算是比较美观的了。今天小编给大家介绍一款非常有特色…

智能制造 | 璞华科技入选「2023年苏州市智能制造优秀服务商」公式名单

刚刚,璞华科技入选「2023年苏州市智能制造优秀服务商」公示名单!再次表明,璞华科技在智能制造领域的实力得到了业界认可。 璞华科技有限公司是一家以“帮助客户实现数智化转型升级”为愿景的高科技企业,在苏州、武汉、北京、香港、…

欢度盛夏,畅享清凉——七月超市营销策略

随着七月的到来,我国大部分地区进入夏季,气温逐渐攀升,消费者们对清凉、消暑产品的需求也随之增长。在这个夏日,超市应该如何抓住这一商机,提升销售业绩呢?本文将从商品陈列、促销活动等方面,为…

【AI一键启动】ChatTTS语音合成WebUI界面一键启动,开箱即用!

《博主简介》 小伙伴们好,我是阿旭。专注于人工智能、AIGC、python、计算机视觉相关分享研究。 ✌更多学习资源,可关注公-仲-hao:【阿旭算法与机器学习】,共同学习交流~ 👍感谢小伙伴们点赞、关注! 《------往期经典推…

Linux进程概念(个人笔记)

Linux进程概念 1.冯诺依曼体系结构2.操作系统(先描述,再组织)3.进程3.1查看进程的方式3.2通过系统调用获取进程标识符3.4查看进程中常见字段状态的指令3.3fork创建子进程3.3.1fork的原理 3.4进程状态3.5进程优先级3.5.1Linux内核的调度队列与…

10 种语言文本准确渲染;Mac无需联网的本地聊天应用;多模态语言模型(MLM)基准测试的引擎;Yolo DotNet版本

✨ 1: Glyph-ByT5 10 种语言文本准确渲染,将文本渲染的准确性从提高到近 90% ,同时还能实现段落渲染自动布局 Glyph-ByT5是一种定制的文本编码器,旨在实现准确的文字视觉渲染。其核心思想是通过细致的字形-文本配对数据集的微调&#xff0c…

机器学习课程复习——隐马尔可夫

不考计算题 Q:概率图有几种结构? 条件独立性的公式? 顺序结构发散结构汇总结构Q:隐马尔可夫模型理解? 概念 集合:状态集合、观测集合 序列:状态序列、观测序列

Excel如何设置自动更新的固定选项

日常工作中你是否想要某数据列设置固定选项,如人力组、财务组、综合组、业务组等,可用“数据验证”实现,如后期新增选项“党建组”,该如何快速处理? 今天刘小生分享“超级表数据验证”方式,只实现固定选项…

Shardingsphere-Proxy 5.5.0部署

Shardingsphere-Proxy 5.5.0部署 Shardingsphere系列目录:背景下载安装包Linux解压安装包修改配置文件global.yamldatabase-sharding.yaml配置没有单表情况配置有单表的情况背景 引入数据库驱动启动代理连接代理数据库Navicate工具连接MYSQL客户端连接 Shardingsphe…

PopupWindow 和 Dialog 的区别,我们应该选择哪一个呢?

引言 在安卓开发中,PopupWindow 和 Dialog 是两种常用的弹出窗口组件。虽然它们的用途类似,但在实际应用中有很多区别。本文将详细探讨 PopupWindow 和 Dialog 的区别,帮助开发者更好地选择和使用这两种组件。 什么是 PopupWindow&#xff…

MySQL学习笔记-进阶篇-SQL优化

SQL优化 插入数据 insert优化 1)批量插入 insert into tb_user values(1,Tom),(2,Cat),(3,Jerry); 2)手动提交事务 mysql 默认是自动提交事务,这样会导致频繁的开启和提交事务,影响性能 start transaction insert into tb_us…

【Linux】Xshell和Xftp简介_安装_VMware虚拟机使用

1、简介 Xshell简介 Xshell是一款强大的安全终端模拟软件支持SSH1、SSH2以及Microsoft Windows平台的TELNET协议。该软件通过互联网实现到远程主机的安全连接,并通过其创新性的设计和特色帮助用户在复杂的网络环境中高效工作。Xshell可以在Windows界面下访问远端不…

云上宝库:三大厂商对象存储安全性及差异性比较

前言 看了几家云厂商的对象存储,使用上有相似也有差异,聊聊阿里云、腾讯云、京东云三家对象存储在使用中存在的风险以及防护措施。 0x01 云存储命名 阿里云对象存储OSS(Object Storage Service),新用户免费试用三个月,存储包容…

数据分析:RT-qPCR分析及R语言绘图

介绍 转录组分析是一种用于研究细胞或组织中所有RNA分子的表达水平的高通量技术。完成转录组分析后,科学家们通常需要通过定量实时聚合酶链式反应(qRT-PCR)来验证二代测序(Next-Generation Sequencing, NGS)结果的可靠…

头歌资源库(12)找第K小数

一、 问题描述 二、算法思想 可以使用快速排序算法来解决这个问题。 首先,选择一个基准元素,通常选择序列的第一个元素。 然后,将序列中小于等于基准元素的元素放在基准元素的左边,大于基准元素的元素放在基准元素的右边。 接着…