Java 面试常见问题之——面向对象的三个基本特征

Java 面试常见问题之——面向对象的三个基本特征

⾯向对象的三个基本特征是:封装继承多态

  • 继承: 让某个类型的对象获得另一个类型的对象的属性和方法。继承就是子类继承父类的特征和行为,使得子类对象(实例)具有父类的实例域和方法,或子类从父类继承方法,使得子类具有父类相同的行为。
  • 封装: 隐藏部分对象的属性和实现细节,对数据的访问只能通过外公开的接。通过这种方式,对象对内部数据提供了不同级别的保护,以防止程序中无关的部分意外的改变或错误的使用了对象的私有部分。
  • 多态: 对于同一个行为,不同的子类对象具有不同的表现形式。多态存在的3个条件:1)继承;2)重写;3)父类引用指向子类对象。

举个简单的例子:英雄联盟里面我们按下Q键这个动作:
对于亚索,就是斩钢闪
对于提莫,就是致盲吹箭
对于剑圣,就是阿尔法突袭
同一个事件发生在不同的对象上会产生不同的结果。下面再举个简单的例子帮助大家理解,这个例子可能不是完全准确,但是依然是可以帮助我们理解的。

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Nginx负载均衡策略

upstream机制提供了负载均衡的功能,可以讲请求负载分担到集群服务器的某个服务器上 打包时候到时一个8085 一个8090 一个8095 nohup /usr/local/develop/jdk-17.0.10/bin/java -Xmx256m -Xms256m -jar nginx-demo-8085.jar > server8085.log 2>&1 & nohup /u…

56_Redis简单命令

一、引言 1.1 数据库压力过大 由于用户量增大,请求数量也随之增大,数据压力过大 一个请求的url 背后可能有有4-5个 sql的操作 每秒钟 qps(并发数) 1000 背后的sql操作 4000-5000mysql 单机并发量读写 8000-10000 &#x…

鸿蒙配置Version版本号,并获取其值

app.json5中配置版本号: 获取版本号: bundleManager.getBundleInfoForSelf(bundleManager.BundleFlag.GET_BUNDLE_INFO_WITH_APPLICATION).then((bundleInfo) > {let versionName bundleInfo.versionName; //应用版本号}).catch((error: BusinessE…

【Vulnhub系列】Vulnhub_DC-1靶场渗透(原创)

【Vulnhub系列靶场】Vulnhub_DC-1靶场渗透 原文转载已经过授权 原文链接:Lusen的小窝 - 学无止尽,不进则退 (lusensec.github.io) 一、环境准备 1、在百度网盘中下载DC-1靶场。DC-1靶场受virtual box 的影响,在VM中直接打开是扫描不到IP 的…

jmeter录制

1、添加代理服务器 添加方法:“测试计划”右键 -> 添加 -> 非测试元件 -> HTTP代理服务器 2、添加线程组 添加方法:“测试计划”右键->添加->线程(用户)->线程组 3、配置http代理服务器 (1&a…

第三方软件测试报告可做哪些用途?

1. 评估软件质量:第三方软件测试报告通过对软件的各项性能指标进行测试和分析,能够客观地评估软件的质量水平。这份报告可以为软件的开发团队提供反馈,帮助他们发现和修复潜在的问题,提高软件的质量和稳定性。 2. 验证软件功能&a…

<数据集>手机识别数据集<目标检测>

数据集格式:VOCYOLO格式 图片数量:16172张 标注数量(xml文件个数):16172 标注数量(txt文件个数):16172 标注类别数:1 标注类别名称:[Phone] 使用标注工具:labelImg 标注规则:…

探索分布式光伏运维系统的组成 需要几步呢?

前言 随着光伏发电的不断发展,对于光伏发电监控系统的需求也日益迫切,“互联网”时代,“互联网”的理念已经转化为科技生产的动力,促进了产业的升级发展,本文结合“互联网”技术提出了一种针对分散光伏发电站运行数据…

c#调用python代码,实现读取npy的数据并显示图像

本例子实现的功能是: 根据stat.npy、ops.npy两个npy文件的内容,显示图形 1. 用python代码实现读取两个文件,文件名为read_npy.py,代码如下: import numpy as npdef read_npy_files(stat_file, ops_file):stat np.lo…

NSL-KDD入侵检测系统的设计与实现系列预告

每日进阶-基于机器学习的入侵检测系统——打怪升级之道 在当今的数字时代,网络安全不仅是防御,更是主动出击。你是否想知道如何用机器学习技术设计一套入侵检测系统(IDS),让黑客无所遁形?本系列文章将为您揭…

【全志H616开发】Linux守护进程

文章目录 守护进程简介基本特点创建一个守护进程通常涉及以下步骤:进程查看指令: 守护进程开发代码示例: 开机自动启动 守护进程 简介 Linux Daemon(守护进程)是运行在后台的一种特殊进程。它独立于控制终端并且周期性…

VScode | 我的常用插件分享

系列文章目录 本系列文章主要分享作位前端开发的工具之------VScode的使用分享。 文章目录 目录 系列文章目录 文章目录 前言 一、Vetur 三、别名路径跳转 四、Prettier 五、koroFileHeader 六、vue-helper 总结 前言 本文主要分享VScode的好用插件。 一、Vetur Vue的Vetur插…

【Vulnhub系列】Vulnhub_Raven2靶场渗透(原创)

【Vulnhub系列靶场】Vulnhub_Raven2 渗透 原文转载已经过授权 原文链接:Lusen的小窝 - 学无止尽,不进则退 (lusensec.github.io) 一、环境准备 从网盘下载该靶机,在vm中选择【打开】 然后设置好存储路径,开机后检查靶机的网络连…

谷粒商城实战笔记-84-商品服务-API-新增商品-获取分类关联的品牌

文章目录 一,品牌查询接口的后台实现二,编码经验总结1,Controller层的作用1.1 参数处理1.2 调用Service1.3 处理Service返回结果实例 2,VO的封装时机3,Service中最好注入Service,不要直接依赖Dao 问题记录 …

vue2 vue3 props 的处理机制

在 Vue 2 中,props 是单向数据流,父组件向子组件传递的 props 默认情况下是不具有响应式特性的。这意味着当父组件的数据发生变化时,如果传递给子组件的 props 发生变化,子组件不会自动更新视图。 具体来说,在 Vue 2 …

增量学习中Task incremental、Domain incremental、Class incremental 三种学习模式的概念及代表性数据集?

1 概念 在持续学习领域,Task incremental、Domain incremental、Class incremental 是三种主要的学习模式,它们分别关注不同类型的任务序列和数据分布变化。 1.1 Task Incremental Learning (Task-incremental) 任务增量学习,也称为任务增…

【论文共读】【翻译】【GAN】Generative Adversarial Nets

论文原文地址:https://arxiv.org/pdf/1406.2661 翻译:Generative Adversarial Nets 生成对抗网络 0. 摘要 提出了一种新的对抗过程估计生成模型的框架,其中我们同时训练两个模型:一个是捕获数据分布的生成模型G,另一…

燃气安全无小事,一双专业劳保鞋让你步步安心!

燃气作为我们日常生活中不可或缺的能源之一,为我们的生活提供了极大便利,其安全性往往被忽视在忙碌的日常生活背后。然而,燃气事故一旦发生,后果往往不堪设想,轻则财产损失,重则危及生命。因此,…

dockerfile部署镜像 ->push仓库 ->虚拟机安装建木 ->自动部署化 (详细步骤)

目录 创建私服仓库 vi /etc/docker/daemon.json vim deploy.sh判断脚本内容 创建 建木 后端部署 命名空间 设置密码用户名 创建git仓库 gitignore文件内容 图形项目操作 git maven docker镜像 点击流程日志 vim /etc/docker/daemon.json 执行部署脚本 ip 开发…