【Java面试八股文宝典之基础篇】备战2023 查缺补漏 你越早准备 越早成功!!!——Day08

news2025/8/6 1:55:53

       大家好,我是陶然同学,软件工程大三明年实习。认识我的朋友们知道,我是科班出身,学的还行,但是对面试掌握不够,所以我将用这100多天更新Java面试题🙃🙃。

  不敢苟同,相信大家和我一样,都有一个大厂梦,作为一名资深Java选手,深知面试重要性,接下来我准备用100天时间,基于Java岗面试中的高频面试题,以每日3题的形式,带你过一遍热门面试题及恰如其分的解答。当然,我不会太深入,因为我怕记不住!!

  因此,不足的地方希望各位在评论区补充疑惑、见解以及面试中遇到的奇葩问法,希望这100天能够让我们有质的飞越,一起冲进大厂!!,让我们一起学(juan)起来!!!

什么是面向对象

什么是面向对象?
对比面向过程,是两种不同的处理问题的角度
面向过程更注重事情的每一个步骤及顺序,面向对象更注重事情有哪些参与者(对象)、及各自需
要做什么
比如:洗衣机洗衣服
面向过程会将任务拆解成一系列的步骤(函数), 1 、打开洗衣机 ----->2 、放衣服 ----->3 、放洗衣
----- >4、清洗 ----->5 、烘干
面向对象会拆出人和洗衣机两个对象:
人:打开洗衣机 放衣服 放洗衣粉
洗衣机:清洗 烘干
从以上例子能看出,面向过程比较直接高效,而面向对象更易于复用、扩展和维护
面向对象
封装 :封装的意义,在于明确标识出允许外部使用的所有成员函数和数据项
内部细节对外部调用透明,外部调用无需修改或者关心内部实现
1 javabean 的属性私有,提供 getset 对外访问,因为属性的赋值或者获取逻辑只能由 javabean
身决定。而不能由外部胡乱修改
private String name;
public void setName(String name){
this.name = "tuling_"+name;
}
该name有自己的命名规则,明显不能由外部直接赋值

2、orm框架

操作数据库,我们不需要关心链接是如何建立的、 sql 是如何执行的,只需要引入 mybatis ,调方法
即可
继承 :继承基类的方法,并做出自己的改变和 / 或扩展
子类共性的方法或者属性直接使用父类的,而不需要自己再定义,只需扩展自己个性化的
多态 :基于对象所属类的不同,外部对同一个方法的调用,实际执行的逻辑不同。
继承,方法重写,父类引用指向子类对象
父类类型 变量名 = new 子类对象 ;
变量名 . 方法名 ();
无法调用子类特有的功能

JDK、JRE、JVM之间的区别

JDK(Java SE Development Kit),Java标准开发包,它提供了编译、运⾏Java程序所需的各种⼯
具和资源, 包括Java编译器、Java运⾏时环境,以及常⽤的Java类库
        
JRE( Java Runtime Environment) , Java运⾏环境 ,⽤于运⾏Java的字节码⽂件。JRE中包括了
JVM以及JVM⼯作所需要的类库,普通⽤户⽽只需要安装JRE来运⾏Java程序,⽽程序开发者必须
安装JDK来编译、调试程序。
JVM(Java Virtual Mechinal), Java虚拟机 ,是JRE的⼀部分,它是整个java实现跨平台的最核⼼的
部分,负责运⾏字节码⽂件。
我们写Java代码,⽤txt就可以写,但是写出来的Java代码,想要运⾏,需要先编译成字节码,那
就需要编译器,⽽JDK中就包含了编译器javac,编译之后的字节码,想要运⾏,就需要⼀个可以
执⾏字节码的 程序,这个程序就是JVM(Java虚拟机),专⻔⽤来执⾏Java字节码的。 如果我们
要开发Java程序,那就需要JDK,因为要编译Java源⽂件。
如果我们只想运⾏已经编译好的Java字节码⽂件,也就是*.class⽂件,那么就只需要JRE。
JDK中包含了JRE,JRE中包含了JVM 。 另外,JVM在执⾏Java字节码时,需要把字节码解释为机
器指令,⽽不同操作系统的机器指令是可
能不⼀样的,所以就导致不同操作系统上的JVM是不⼀样的,所以我们在安装JDK时需要选择操作
系统。另外,JVM是⽤来执⾏Java字节码的,所以凡是某个代码编译之后是Java字节码,那就都
能在JVM上运⾏,⽐如Apache Groovy , Scala and Kotlin 等等。

==和equals⽅法的区别

==:如果是基本数据类型,⽐较是值,如果是引⽤类型,⽐较的是引⽤地址
equals:具体看各个类重写equals⽅法之后的⽐较逻辑,⽐如String类,虽然是引⽤类型,但是
String类中重写了equals⽅法,⽅法内部⽐较的是字符串中的各个字符是否全部相等。

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

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

相关文章

6种MySQL数据库平滑扩容方案剖析

1. 扩容方案剖析 1.1 扩容问题 在项目初期,我们部署了三个数据库A、B、C,此时数据库的规模可以满足我们的业务需求。为了将数据做到平均分配,我们在Service服务层使用uid%3进行取模分片,从而将数据平均分配到三个数据库中。 如…

网络丢包,网络延迟?这款神器帮你搞定所有!

常用的 ping,tracert,nslookup 一般用来判断主机的网络连通性,其实 Linux 下有一个更好用的网络联通性判断工具,它可以结合ping nslookup traceroute 来判断网络的相关特性,这个命令就是 mtr。 mtr 全称 my tracerout…

2022年“移动云杯”算力网络应用创新大赛圆满落幕,百万大奖揭晓!

11 月 17-18 日,2022 年移动云开发者技术论坛暨“移动云杯”算力网络应用创新大赛总决赛在苏州举行。活动现场公布了 2022 年“移动云杯”算力网络应用创新大赛总决赛获奖名单。同时重磅发布了移动云 openAPI 2.0、首届移动云量子计算大赛。 三大赛道齐发力&#xf…

2022ICPC 网络赛第二场 E An Interesting Sequence

You should generate a sequence of positive integers of length n. Of course,this sequence needs to meet some requirements. ∀ i∈[1,n] ai​>1 ∀ i∈[2,n] gcd(ai−1​,ai​)1 a1​k(k>1) gcd(x,y) means the greatest common divisor of x and y. You n…

启明智显分享|4.3寸智能串口屏应用于充电桩

据数据显示,全球新能源汽车销量正大幅度增长,全球汽车电动化渗透率也由0.8%增长到7.74%,这不仅意味着汽车产业电动化浪潮的来临,也证实了我国新能源汽车行业正处于高速发展状态。随着电动汽车销售量与保有量的迅速增长&#xff0c…

linux线程互斥

文章目录多线程执行的问题Linux线程互斥要解决以上问题&#xff0c;需要做到三点&#xff1a;多线程执行的问题 先看一段代码 int tickets10000;void* buytickets(void* args) {char* name (char*)args;while(1){if(tickets>0){cout<<name<<"] tickets:…

m基于数字锁相环DPLL的分频器simulink仿真

目录 1.算法概述 2.仿真效果预览 3.MATLAB部分代码预览 4.完整MATLAB程序 1.算法概述 随着数字电路技术的发展&#xff0c;数字锁相环在调制解调、频率合成、FM 立体声解码、彩色副载波同步、图象处理等各个方面得到了广泛的应用。数字锁相环不仅吸收了数字电路可靠性高、体…

C++11 互斥锁

目录 互斥锁 2.1 独占互斥量std::mutex std::mutex使用Demo 2.2 递归互斥量std::recursive_mutex 死锁demo 使用std::recursive_mutex递归锁 2.3 带超时的互斥量 std::timed_mutexDemo 2.4 lock_guard和unique_lock的使用和区别 unique_lock,lock_guard的使用 unique…

【数据结构】栈和队列OJ练习

文章目录1. 栈1.1 栈的概念及其结构1.2 栈的实现Stack.hStack.cTest.c2. 队列2.1 队列的概念及其结构2.2 队列的实现Queue.hQueue.cTest.c3. 栈和队列面试题3.1 括号匹配问题3.2 用队列实现栈3.3 用栈实现队列3.4 设计循环队列1. 栈 1.1 栈的概念及其结构 &#x1f436; 栈的…

《深度学习进阶 自然语言处理》第六章:LSTM介绍

文章目录6.1 RNN的问题6.1.1 RNN的复习6.1.2 梯度消失和梯度爆炸6.1.4 梯度爆炸的对策6.2 梯度消失和LSTM6.2.1 LSTM的接口6.2.2 LSTM层的结构6.2.3 输出门6.2.4 遗忘门6.2.5 新的记忆单元6.2.6 输入门6.2.7 LSTM的梯度的流动6.3 使用LSTM的语言模型6.3.1 LSTM层的多层化6.3.2 …

乐华娱乐欲重返上市:毛利率走低,上半年利润下滑,韩庚为股东

撰稿|汤汤 来源|贝多财经 宣布暂缓香港IPO计划不到3个月&#xff0c;乐华娱乐&#xff08;HK:02306&#xff09;欲再度回归。 11月17日&#xff0c;港交所披露的信息显示&#xff0c;乐华娱乐集团&#xff08;YH Entertainment Group&#xff0c;简称“乐华娱乐”&#xff0…

谈谈主数据管理的概念、原则、标准和指南

1主数据的定义和关键概念 1.1什么是主数据 主数据是不同业务领域的公共信息,并在多个业务流程中使用。主数据通常描述参与事务或事件的事物。示例包括有关课程、学生或雇员的信息。 参考数据通常用于对其他数据(如状态代码)进行分类,或与组织边界以外的信息(如国家列表)相…

ctfhub -afr -1 2 3

afr-1 打开题目链接 默认的传参数据为 ?phello 更改一下试试看 ?p111 无回显 ?pflag 回显了 no no no 想到了 php任意文件读取 ?pphp://filter/readconvert.base64-encode/resourceflag 回显出数据 应该是base64 拿去解码 得到flag afr-2 打开题目链接 查看源代码…

【第一阶段:java基础】第8章:面向对象编程高级-1(P333-P393)static、main、代码块、单例设计模式

本系列博客是韩顺平老师java基础课的课程笔记&#xff0c;B站&#xff1a;课程链接&#xff0c;吐血推荐的一套全网最细java教程&#xff0c;获益匪浅&#xff01; 韩顺平P333-P393类变量和类方法类变量/静态变量类方法/静态方法理解main方法语法代码块注意事项好处细节单例设计…

Java接口

什么是接口&#xff1f; 在Java中&#xff0c;接口可以看成是多个类的公共规范&#xff0c;是一种引用数据类型。 使用关键字interface来定义接口 interface IRunning {void run(); }在创建接口时&#xff0c;接口的命名一般以大写字母I开头&#xff0c;接口的命名一般使用形…

【数据结构】栈和队列

文章目录栈和队列栈栈的概念及结构栈的实现初始化栈入栈出栈获取栈顶元素获取栈中有效元素个数判断栈是否为空销毁栈括号匹配问题队列队列的概念及结构队列的实现初始化队列队尾入队列对头出队列获取队头元素获取队尾元素销毁队列判断队列是否为空栈和队列 栈 栈的概念及结构…

带你初识微服务

博客主页&#xff1a;踏风彡的博客 博主介绍&#xff1a;一枚在学习的大学生&#xff0c;希望在这里和各位一起学习。 所属专栏&#xff1a;SpringCloud 文章创作不易&#xff0c;期待各位朋友的互动&#xff0c;有什么学习问题都可在评论区留言或者私信我&#xff0c;我会尽我…

同花顺_代码解析_技术指标_L

本文通过对同花顺中现成代码进行解析&#xff0c;用以了解同花顺相关策略设计的思想 目录 LH_LYDG LH_猎鹰歼狐 LHBLX LHSJ LHTZ LHXJ LH猎狐雷达 LOF净值 LWR LH_LYDG 猎鹰渡关&#xff08;检测大盘顶部&#xff09; 指标用法&#xff1a; &#xff08;1&#xff…

进程间的信号

目录 一.信号入门 1.1概念 1.2信号发送与记录 1.3信号的处理方式 二.产生信号的方式 2.1通过终端按键产生 2.2通过系统函数向进程发信号 2.3由软件条件产生信号 2.4由硬件异常产生信号 三.阻塞信号 3.1信号相关概念 3.2信号在内核的表示 3.3sigset_t&#xff1a; 3.4…

工具及方法 - 使用Total Commander来查找重名文件

我只是一个Total Commander的轻度使用者&#xff0c;主要使用的是打开多个窗口&#xff0c;可以方便的以标签形式切换。 还有&#xff0c;这个软件是免费的&#xff0c;只是免费版打开时多一步&#xff0c;要输入个数字验证。 今天在使用一个SDK时&#xff0c;要包含进很多头文…