Java笔试|面试 —— 对多态性的理解
谈谈对多态性的理解:
一个事物的多种形态(编译和运行时状态不一致性)
实现机制:通过继承、重写和向上转型(Object obj = new 子类())来实现。
1.广义上的理解
-
子类对象的多态性,方法的重写;方法的重载;
-
子类对象的多态性:编译时是父类对象,运行时是不确定的子类对象。(体现不一致性)
-
方法的重写:继承父类后方法的重写,子父类方法不一致。(体现不一致性)
-
方法的重载:方法的多态性(方法名一样,形参列表不一样,表现出不同形态,即多态性)(没有体现出状态不一致性)
-
2.狭义上的理解
-
Java中多态性主要指:子类对象的多态性
-
格式:
Object obj = new Xx(…); 父类的引用指向子类的对象 4
Object obj = new String(“hell!”);
Person per = new Man(); 声明是父类,实际new的子类对象
-
3.多态的优点
-
减少了大量的重载的方法的定义;开闭原则( 对扩展开放,对修改关闭<无修改> )
-
方法的主要使用场景
应用于方法的形参()中,形参类型无法确定,写为父类,而实际调用方法时传递的是各种各样的子类。不需要再写各种重载的方法,直接写一个父类即可。(减少了大量的重载的方法的定义)
-举例:public boolean equals(Object obj)
-
-
多态无处不在(重点理解)
- 例如开发中大量使用的抽象类和接口,其根本不能实例化,只能通过子类对象实例化,(体现为多态性)。如果子类对象不能赋值,抽象类和接口将没有任何意义。
- 抽象类,接口就是基于多态而存在的,抽象类,接口要子类实例化。
- 即如果没有多态,抽象类和接口将没有意义。
4.多态的使用(多态new的对象 与 不用多态new对象)
-
多态new的对象
- 虚拟方法调用。即“编译看左边,运行看右边”。
- 屏蔽了子类特有的属性和方法,不能调用。
- 一般写在形参上,因为没法确定子类是谁
-
不用多态new对象
- 方法里面,正常new对象即可
-
注意:属性不存在多态性。
5.多态的逆过程
- 向下转型,使用强转符()。
- 为了避免出现强转时的ClassCastException,建议强转()之前使用instanceOf进行判断
相关文章:
![](https://www.ngui.cc/images/no-images.jpg)
Java笔试|面试 —— 对多态性的理解
谈谈对多态性的理解: 一个事物的多种形态(编译和运行时状态不一致性) 实现机制:通过继承、重写和向上转型(Object obj new 子类())来实现。 1.广义上的理解 子类对象的多态性,方法的重写&am…...
从RL的专业角度解惑 instruct GPT的目标函数
作为早期chatGPT背后的核心技术,instruct GPT一直被业界奉为里程碑式的著作。但是这篇论文关于RL的部分确写的非常模糊,几乎一笔带过。当我们去仔细审查它的目标函数的时候,心中不免有诸多困惑。特别是作者提到用PPO来做强化学习,…...
![](https://i-blog.csdnimg.cn/direct/ed336fb4a41d47b194b1b168fd1210de.png#pic_center)
location匹配的优先级和重定向
nginx的重定向(rewrite) location 匹配 location匹配的就是后面的uri /wordpress 192.168.233.10/wordpress location匹配的分类和优先级 1.精确匹配 location / 对字符串进行完全匹配,必须完全符合 2.正则匹配 ^-前缀级别ÿ…...
![](https://i-blog.csdnimg.cn/direct/7b990667870a46f1abead337031c7ae7.png)
观察矩阵(View Matrix)、投影矩阵(Projection Matrix)、视口矩阵(Window Matrix)及VPM矩阵及它们之间的关系
V表示摄像机的观察矩阵(View Matrix),它的作用是把对象从世界坐标系变换到摄像机坐标系。因此,对于世界坐标系下的坐标值worldCoord(x0, y0, z0),如果希望使用观察矩阵VM将其变换为摄像机坐标系下的坐标值localCoord(x…...
![](https://i-blog.csdnimg.cn/direct/434c0d62fd6342279200a5dc36bd5e5b.png)
谷粒商城学习笔记-19-快速开发-逆向生成所有微服务基本CRUD代码
文章目录 一,使用逆向工程步骤梳理1,修改逆向工程的application.yml配置2,修改逆向工程的generator.properties配置3,以Debug模式启动逆向工程4,使用逆向工程生成代码5,整合生成的代码到对应的模块中 二&am…...
![](https://img-blog.csdnimg.cn/8c95ab5b58c84aada0dfae24f82dc48e.png)
时序预测 | Matlab实现TCN-Transformer的时间序列预测
时序预测 | Matlab实现TCN-Transformer的时间序列预测 目录 时序预测 | Matlab实现TCN-Transformer的时间序列预测效果一览基本介绍程序设计 效果一览 基本介绍 基于TCN-Transformer模型的时间序列预测,可以用于做光伏发电功率预测,风速预测,…...
![](https://img-blog.csdnimg.cn/img_convert/da5f0741e50090b4769a04dae9e134b5.png)
没想到MySQL 9.0这么拉胯
MySQL 7月1号发布了9.0版本,然而没想到并没有引起大家的狂欢,反而是来自DBA圈子的一篇吐槽,尤其是PG界吐槽更厉害。 难道MySQL现在真的这么拉胯了?本着好奇的态度,我也去下载了MySQL9.0的手册看了一下。确实有点让我大…...
![](https://www.ngui.cc/images/no-images.jpg)
开源 Wiki 系统 InfoSphere 2024.01.1 发布
推荐一套基于 SpringBoot 开发的简单、易用的开源权限管理平台,建议下载使用: https://github.com/devlive-community/authx 推荐一套为 Java 开发人员提供方便易用的 SDK 来与目前提供服务的的 Open AI 进行交互组件:https://github.com/devlive-commun…...
![](https://www.ngui.cc/images/no-images.jpg)
1.Introduction to Spring Web MVC framework
Web MVC framework 文档:22. Web MVC framework (spring.io) 概述 Web MVC框架(Web Model-View-Controller Framework)是一种用于构建Web应用程序的软件架构模式。MVC模式将应用程序分为三个主要组件:模型(Model&am…...
![](https://www.ngui.cc/images/no-images.jpg)
Onnx 1-深度学习-概述1
Onnx 1-深度学习-概述1 一: Onnx 概念1> Onnx 介绍2> Onnx 的作用3> Onnx 应用场景4> Onnx 文件格式1. Protobuf 特点2. onnx.proto3协议3> Onnx 模型基本操作二:Onnx API1> 算子详解2> Onnx 算子介绍三: Onnx 模型1> Onnx 函数功能1. np.random.rand…...
![](https://www.ngui.cc/images/no-images.jpg)
网络基础——udp协议
UDP协议(User Datagram Protocol,用户数据报协议)是OSI(Open System Interconnection,开放式系统互联)参考模型中一种无连接的传输层协议,它提供了一种简单的、不可靠的数据传输服务。以下是关于…...
![](https://i-blog.csdnimg.cn/direct/f1a8780c72404088aca4522051ee1906.png)
分布式锁理解
介绍分布式锁,我觉得从项目的背景入手把 在伙伴匹配系统中,我创建了一个定时任务,做为缓存预热的手段 这个具体原因在Redis-CSDN博客 接下来切入正题: 想象每个服务器都有一个定时任务,都要对数据库或者缓存进行操…...
![](https://www.ngui.cc/images/no-images.jpg)
Android Gradle 开发与应用 (十): Gradle 脚本最佳实践
目录 1. 使用Gradle Kotlin DSL 1.1 什么是Gradle Kotlin DSL 1.2 迁移到Kotlin DSL 1.3 优势分析 2. 优化依赖管理 2.1 使用依赖版本管理文件 2.2 使用依赖分组 3. 合理使用Gradle插件 3.1 官方插件和自定义插件 3.2 插件管理的最佳实践 4. 任务配置优化 4.1 使用…...
![](https://www.ngui.cc/images/no-images.jpg)
c#获取本机的MAC地址(附源码)
在前一次的项目中,突然用到了这个获取本机的MAC地址,然后就研究了一下,记录下来,防止以后再用到, 使用winfrom做的,界面一个button,一个textBox,点了button以后给textBox赋值显示mac地址 附上源…...
![](https://i-blog.csdnimg.cn/direct/11c915f1ca514b7c843be188325c0568.png)
sqlmap使用之-post注入、head注入(ua、cookie、referer)
1、post注入 1.1、方法一,通过保存数据包文件进行注入 bp抓包获取post数据 将数据保存到post.txt文件 加上-r指定数据文件 1.2、方法二、通过URL注入 D:\Python3.8.6\SQLmap>python sqlmap.py -u "http://localhost/login.php" --data "userna…...
![](https://i-blog.csdnimg.cn/direct/b933cbc12930451c8234daf4a12f597d.png)
XSS: 原理 反射型实例[入门]
原理 服务器未对用户输入进行严格校验,使攻击者将恶意的js代码,拼接到前端代码中,从而实现恶意利用 XSS攻击危害 窃取用户Cookie和其他敏感信息,进行会话劫持或身份冒充后台增删改文章进行XSS钓鱼攻击利用XSS漏洞进行网页代码的…...
![](https://i-blog.csdnimg.cn/direct/85bd36f375b1432b9b984f54af81db5c.png)
Idea新增Module报错:sdk ‘1.8‘ type ‘JavaSDK‘ is not registered in ProjectJdkTable
文章目录 一,创建Module报错二,原因分析三,解决方案1,点击上图的加号,把JDK8添加进来即可2,点击左侧[Project],直接设置SDK为JDK8 四,配置检查与验证 一,创建Module报错 …...
![](https://i-blog.csdnimg.cn/direct/37440478a39f4ccf910bb01d59308e3d.png)
基于RHCE基础搭建简单服务
目录 项目标题与需求一 配置IP地址server机node02机 二 配置web服务三 搭建dns服务器四 开启防火墙server firewalld 五 配置nfs服务器node02 nfsserver autofs 六 开启SELinux七 验证是否能访问www.rhce.com 项目标题与需求 项目标题: 项目需求: 现有…...
![](https://i-blog.csdnimg.cn/direct/de41b9b19061427484ff91f6c2b1c830.png)
威纶通触摸屏软件离线仿真时出现报错8000端口占用或服务器断线
现象 威纶通触摸屏软件离线仿真时出现报错 显示8000端口被占用 或者是设备服务器断线的状态 处理方法 系统参数——HMI属性 端口号更改一下即可 或者关闭占用8000端口的应用 分享创作不易,请多多支持,点赞、收藏、关注! Ending~...
![](https://i-blog.csdnimg.cn/direct/13cfc813dc8442598d8fb77503473340.jpeg#pic_center)
CAS详解
文章目录 CAS使用示例Unsafe类实现原理CAS问题 CAS CAS全称为Compare and Swap被译为比较并交换,是一种无锁算法。用于实现并发编程中的原子操作。CAS操作检查某个变量是否与预期的值相同,如果相同则将其更新为新值。CAS操作是原子的,这意味…...
![](https://i-blog.csdnimg.cn/direct/58e847bd2bc049258b1a6e194855763a.png)
【笔记】虚拟机中的主从数据库连接实体数据库成功后的从数据库不同步问题解决方法2
错误: Last_Errno: 1008 Last_Error: Coordinator stopped because there were error(s) in the worker(s). The most recent failure being: Worker 1 failed executing transaction ANONYMOUS at source log mysql-bin.000014, end_log_pos 200275. See error lo…...
![](https://i-blog.csdnimg.cn/direct/f4521c67a0d94d0ebe8707e3f7a601dc.png)
【每日一练】python类和对象现实举例详细讲解
""" 本节课程目的: 1.掌握类描述现实世界实物思想 2.掌握类和对象的关系 3.理解什么事面向对象 """ #比如设计一个闹钟,在这里就新建一个类 class Clock:idNone #闹钟的序列号,也就是类的属性priceNone #闹…...
![](https://i-blog.csdnimg.cn/direct/1f30f968c286466295b9415f44a018cd.png)
【学习css1】flex布局-页面footer部分保持在网页底部
中间内容高度不够屏幕高度撑不开的页面时候,页面footer部分都能保持在网页页脚(最底部)的方法 1、首先上图看显示效果 2、奉上源码 2.1、html部分 <body><header>头部</header><main>主区域</main><foot…...
![](https://www.ngui.cc/images/no-images.jpg)
Java中创建线程的几种方式
底层都是基于实现Runnable接口 1.继承thread类,new一个thread对象,实现run方法,无返回值 public class MyThread extends Thread {Overridepublic void run() {System.out.println("Thread created by extending Thread class is runn…...
![](https://i-blog.csdnimg.cn/direct/97c5a8462f4f40d797b27475a772523b.png#pic_center)
[A-04] ARMv8/ARMv9-Cache的相关策略
ver0.2 前言 前面我们已经通过三篇文章反反复复的讲Cache的概念、结构、架构,相信大家对Cache已经大概有了初步的了解。这里简单归纳一下: (1) Cache从硬件视角看,是连接PE-Core和主存的一种存储介质,存储的数据是主存中数据的副本…...
![](https://i-blog.csdnimg.cn/direct/8085c98562d641b4836a2f515ac40b54.png)
【笔试常见编程题06】最近公共祖先、求最大连续bit数、二进制插入、查找组成一个偶数最接近的两个素数
1. 最近公共祖先 将一棵无穷大满二叉树的结点按根结点一层一层地从左往右编号,根结点编号为1。现给定a,b为两个结点。设计一个算法,返回a、b最近的公共祖先的编号。注意其祖先也可能是结点本身。 测试样例: 2,3 返回&a…...
![](https://i-blog.csdnimg.cn/direct/34d705f328d1403492cd5ce54a2cc211.png)
【工具分享】Gophish——网络钓鱼框架
文章目录 Gophish安装方式功能简介 Gophish Gophish 是一个开源的网络钓鱼框架,它被设计用于模拟真实世界的钓鱼攻击,以帮助企业和渗透测试人员测试和评估他们的网络钓鱼风险。Gophish 旨在使行业级的网络钓鱼培训对每个人都是可获取的,它易…...
![](https://www.ngui.cc/images/no-images.jpg)
“职业三大底层逻辑“是啥呢?
大家好,我是有用就扩散。 掌握职业发展的三大底层逻辑以宏观视角看待自己的职业发展道路具备长远规划自己职业路劲的能力通过成就事件呈现自己的工作成绩 一、痛点陈述 不喜欢眼前的工作?眼前的工作琐碎没前途?找不到能力提升的方向时候会…...
![](https://i-blog.csdnimg.cn/direct/ae42503f914a45b1acb7de52b499c8dc.jpeg)
飞睿智能无线高速uwb安全数据传输模块,低功耗、抗干扰超宽带uwb芯片传输速度技术新突破
在信息化的时代,数据传输的速度和安全性无疑是每个企业和个人都极为关注的话题。随着科技的飞速发展,超宽带(Ultra-Wideband,简称UWB)技术凭借其性能和广泛的应用前景,逐渐成为了数据传输领域的新星。今天&…...
![](https://i-blog.csdnimg.cn/direct/9cdcb7d682334c69993ef69ee6a5f017.png)
手把手教你从微信中取出聊天表情图片,以动态表情保存为gif为例
以下方法静态图片同样适用 收到动画表情像保存为gif 这时候我们就要借助微信官方的文件小助手网页版。 登录之后把要保存的表情转发给微信传输助手 这个时候就会出现将图像另存为 如果需要保存动图就修改后缀为.gif...
![](/images/no-images.jpg)
wordpress有置顶就置顶没有就其他/黄冈网站seo
无论什么平台,编写支持高并发性的网络服务器,瓶颈往往出在I/O上,目前最高效的是采用Asynchronous I/O模型,Linux平台提供了epoll,Windows平台提供了I/O Completion Port(IO完成端口,即IOCP)。 Windows自win…...
![](https://images2018.cnblogs.com/blog/339342/201805/339342-20180504202430550-365649759.png)
老闵行房价/搜索引擎营销优化诊断训练
最近因需要,翻出几年前的Leapmotion感测器,准备用Unity3D做个互动APP,于是连上官网下载SDK。等下载下来一安装调试,瞬间傻眼,居然要求VR设备。我们Lab倒是不缺VR,有几套VIVE,不过不能保证甲方也…...
![](https://img-blog.csdnimg.cn/20190514092059980.jpg#pic_center?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3plbmd4aWFudGFvMTk5NA==,size_16,color_FFFFFF,t_70)
网站 宗旨/站长工具是干嘛的
职责链模式(Chain of Responsibility):使多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系。将这些对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理它为止。 1、Handler类…...
![](/images/no-images.jpg)
wordpress增加访问速度/网站排名
搬寝室 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 20642 Accepted Submission(s): 7013 Problem Description 搬寝室是非常累的,xhd深有体会.时间追述2006年7月9号,那天xhd迫于无奈要从27号楼搬到3号楼,…...
![](https://img-blog.csdnimg.cn/img_convert/55fd2b2273b5a8b4531f72773c469d6e.gif)
wordpress 小米模板/网站seo快速排名
Stream总览什么是流Stream不是集合元素,它不是数据结构并不保存数据,他是有关算法和计算的,它更像一个高级版本的Iterator。原始版本的Iterator,用户只[md]### Stream总览什么是流Stream不是集合元素,它不是数据结构并不保存数据&…...
![](/images/no-images.jpg)
企业网站建设套餐/搜索引擎关键词优化
目录 0. 相关文章链接 1. 如何确定 FE 进程启动成功 2. 如何确定 BE 进程启动成功 3. 搭建系统后,如何确定 FE、BE 连通性正常 4. Doris 各节点认证机制 5. BE 进程文件句柄数 0. 相关文章链接 数据库 文章汇总 1. 如何确定 FE 进程启动成功 FE 进程启动后…...