Java 还能不能继续搞了?
金三银四招聘季已落幕,虽说行情不是很乐观,但真正的强者从不抱怨。
在此期间,我收到众多小伙伴的宝贵反馈,整理出132道面试题,从基础到高级,有八股文,也有对某个知识点的深度解析。包括以下几部分:
- Java:基础、线程、并发编程、 网络编程、JVM。
- 框架:Spring Boot、Spring Cloud。
- 数据库:Redis、MySQL。
- 架构:系统设计、技术选型、分布式理论等。
准备好迎接金九银十吧!!!
Java 基础
以下面试题可以移步至:
《Java基础面试题》
- Java 创建对象有几种方式?
- 有了数组为什么还要ArrayList?
- 重载和重写的区别
- 什么是内部类?应用在什么场景?
- 介绍下Java中的四种引用
- static都有哪些用法?
- HashCode在集合中的作用
- Hash冲突怎么处理?
- 深拷贝和浅拷贝的区别是什么?
- 你知道什么是fail-fast吗?
- 介绍下你对红黑树的理解
- 异常处理影响性能吗?
- 介绍下try-with-resource语法
- 你知道哪些数据结构?
- AVL树是怎么保持平衡性的?
- 为什么红黑树比AVL树效率高?
Java 线程
以下面试题可以移步至:
《Java线程面试题》
《Java线程安全面试题》
- 创建线程有几种方法?
- 介绍下线程的生命周期?
- 如何停止正在运行的线程?
- 什么是线程安全?
- 线程安全需要保证几个基本特性?
- 为什么wait和notify方法要在同步块中调用?
- Synchronized和Lock的区别?
- 常用的线程池有哪些?
- 为什么需要线程池?
- 简述一下线程池的工作原理
- 线程池的拒绝策略有哪些?
- 说说ThreadLocal的原理?
- 如何保证线程安全?
- 为什么需要确保共享变量的可见性?
- volatile是如何保证可见性、有序性?
- 谈一下 CAS 机制实现原理?
- CAS 机制存在什么问题?
- 简述一下synchronized工作原理?
- 简述一下synchronized锁升级的过程?
- 什么是锁粗化和锁消除?
- 为什么 HashMap 是线程不安全的?
Java 并发编程
以下面试题可以移步至:
《Java并发编程面试题》
- AQS是什么?
- AQS唤醒节点时,为什么是从后往前找?
- AQS为什么用双向链表?
- AQS为什么要有一个虚拟的head节点?
- ReentrantLock 的底层实现
- ReentrantLock的公平锁和非公平锁的区别
- ReentrantReadWriteLock如何实现读写锁?
- CountDownLatch,Semaphore有什么用?
- 你知道哪些常用的阻塞队列?
- 阻塞队列中的虚假唤醒是什么?
Java 网络编程
- 什么是网络编程?
- 什么是BIO、NIO、IO多路复用?
- Java NIO是New IO还是Non-blocking IO?
- 聊一下你对Netty的认识?
- Netty和Java NIO是什么关系?
- Netty为什么那么高效?
Spring Boot
以下面试题可以移步至:
《Spring Boot面试题 》
- 什么是 Spring Boot?
- Spring Boot 有哪些核心注解?
- Spring Boot 自动装配是什么?
- Spring Boot 自动装配原理?
- Spring Boot 配置文件的加载顺序
- bootstrap.properties 和 application.properties 有何区别 ?
- Spring Boot Actuator是什么?
- Spring Boot项目如何热部署?
- Spring Boot 中的 starter 是什么 ?
- Spring Boot 有哪些 starter ?
Spring Cloud
以下面试题可以移步至:
《Spring Cloud 面试题》
- Nacos是CP还是AP?
- 注册中心应该选择CP还是AP?
- Nacos注册中心工作机制是怎样的?
- Eureka注册中心工作机制是怎样的?
- Eureka自我保护机制原理是什么?
- Eureka和Nacos区别
- Nacos配置中心长轮询机制是什么?
- Nacos配置中心为什么不选择主动推送而是采用长轮询机制?
- Nacos配置中心宕机了,会影响服务吗?
- 为什么Feign第一次调用耗时很长?
- 使用Feign如何实现认证的传递?
- Seata中xid如何通过Feign进行全局传递?
- Feign底层默认使用什么发送HTTP,有什么问题?
- Seata支持那些事务模式?
- Gateway和Zuul的区别?
JVM
以下面试题可以移步至:
《JVM 面试题》
- 谈一下你对JVM的理解?
- JVM 为什么可以实现跨平台?
- JAVA内存模型和JVM内存模型有啥关系?
- JDK,JRE以及JVM的关系
- JDK编译器是怎么工作的?
- 类加载机制是什么?
- 有哪些类加载器?
- 什么是双亲委派机制?
- 介绍一下JVM内存区域划分
- 堆为什么进行分代设计?
- 什么是内存的担保机制?
- 为什么Eden:S0:S1 比例是8:1:1?
- 描述一下对象内存分配过程
- 如何判断对象已死?
- 讲一讲内存模型?
- 常用的垃圾回收算法有哪些?
- 常用的垃圾收集器有哪些?
- 常用的JVM调优参数有哪些?
Redis
以下面试题可以移步至:
《Redis 面试题》
- 为什么要使用Redis做缓存?
- 为什么Redis单线程模型效率也能那么高?
- Redis常见数据结构以及使用场景?
- Redis的数据结构是如何组织的?
- pipeline有什么好处,为什么要用 pipeline?
- Redis官方为什么不提供 Windows版本?
- Redis 持久化方式有哪些?有什么区别?
- 什么是Redis事务?原理是什么?
- Redis6.0为什么要引入多线程?
- 如何在100个亿URL中快速判断某URL是否存在?
- 什么是渐进式rehash?
- Redis有哪些的过期策略?
- Redis有哪些的淘汰策略?
- 什么是BigKey?
- 什么是缓存击穿、缓存穿透、缓存雪崩?
MySQL
- MySQL索引在什么情况下会失效?为什么?
- 描述一下一条SQL的执行流程?
- 执行器调用存储引擎后,InnoDB做了什么事?
- MySQL是如何保证数据不丢失的?
- MySQL是如何保证数据一致性的?
- MySQL数据被误删怎么办?
- 描述一下MySQL的主从复制流程。
- 分库分表有什么好的方案?
- 谈一下对MySQL事务隔离的认识?
- MySQL是怎么处理并发事务的?
- 什么是异构索引表,在分库分表场景下如何应用?
架构
- 如何在海量数据中快速检测某个数据?
- 消息中间件如何选型?
- 如何避免RabbitMQ消息丢失?
- 什么情况下可以用微服务架构?
- 高并发的系统都是怎么设计出来的?
- 什么是限流?你知道哪些限流算法?
- 如何理解分布式系统下的CAP理论?
- BASE理论又是什么?
- 你知道哪些分布式一致性算法?
- 如何保证分布式系统中ID的唯一性?
相关文章:

Java 还能不能继续搞了?
金三银四招聘季已落幕,虽说行情不是很乐观,但真正的强者从不抱怨。 在此期间,我收到众多小伙伴的宝贵反馈,整理出132道面试题,从基础到高级,有八股文,也有对某个知识点的深度解析。包括以下几部…...

【日记】遇到了一个很奇怪的大爷(845 字)
正文 花了昨天和今天两天时间,把数据转移完了。这块 2T 的硬盘可以光荣退休了。目前是没什么存储焦虑了。 农发行净开发一些垃圾系统。今天没什么业务,但跟 ActiveX 斗智斗勇了一整天,最后实在搞不过 IE 浏览器。我也懒得管了,又不…...

Python 机器学习 基础 之 处理文本数据 【处理文本数据/用字符串表示数据类型/将文本数据表示为词袋】的简单说明
Python 机器学习 基础 之 处理文本数据 【处理文本数据/用字符串表示数据类型/将文本数据表示为词袋】的简单说明 目录 Python 机器学习 基础 之 处理文本数据 【处理文本数据/用字符串表示数据类型/将文本数据表示为词袋】的简单说明 一、简单介绍 二、处理文本数据 三、用…...

GAT1399协议分析(10)--视频定义及解析
一、官方定义 二、字段解析 VideoID 类型BasicObjectID 解析参考GAT1399协议分析(8)--ImageInfo字段详解-CSDN博客 InfoKind 采集类型...

【C语言】学生管理系统:完整模拟与实现
🌈个人主页:是店小二呀 🌈C语言笔记专栏:C语言笔记 🌈C笔记专栏: C笔记 🌈喜欢的诗句:无人扶我青云志 我自踏雪至山巅 🔥引言 本篇文章为修改了在校期间实训报告,使用C…...

pypi 发布自己的包
注册pypi个人用户 网址:https://pypi.org 目录结构dingtalk_utils 必须-pkgs- __init__.py .gitignore LICENSE 必须 README.md 必须 requirements.txt setup.py 必须安装依赖 pip install setuptools wheel安装上传工具 pip install twinesetup.py i…...

关闭windows11磁盘地址栏上的历史记录
关闭windows11的磁盘地址栏上的历史记录 windows11打开磁盘后访问某一个磁盘路径后会记录这个磁盘路径,而且有时候会卡住这个地址栏(关都关不掉),非常麻烦。 如下图所示: 关闭地址栏历史记录 按下windows键打开开…...

DDS自动化测试落地方案 | 怿星科技携最新技术亮相是德科技年度盛会
5月28日,怿星科技作为是德科技的重要合作伙伴亮相Keysight World Tech Day 2024。在此次科技盛会上,怿星科技不仅展示了领先的DDS自动化测试解决方案等前沿技术,还分享了在“周期短、任务重”的情况下,如何做好软件开发和测试验证…...

新品!和芯星通全系统全频高精度板卡UB9A0首发
6月6日,和芯星通发布了UB9A0全系统全频高精度GNSS板卡,主要应用于CORS站、便携基站、GNSS全球监测跟踪站等。延续了上一代产品高质量原始观测量的特点,UB9A0在性能和稳定性方面均表现出众。 UB9A0基于射频基带及高精度算法一体化的GNSS SoC芯…...

Cognita RAG:模块化、易用与可扩展的开源框架
Cognita RAG是一个开源框架,它通过模块化设计、用户友好的界面和可扩展性,简化了将领域特定知识整合到通用预训练语言模型中的过程。本文介绍了Cognita的特点、优势、应用场景以及如何帮助开发者构建适合生产环境的RAG应用程序。 文章目录 Cognita RAG介…...

linux虚拟机免密登录配置
1、假设A服务器要免密登录B服务器 2、在A服务器上执行命令: cd /root/.ssh/ ssh-keygen -t rsa #这里会生成两个文件 一个是id_rsa私钥和公钥rsa.pub2、我们把公钥的内容复制粘贴到B服务器的/root/.ssh/authorized_keys文件下 #在A服务器上执行命令记录内容 cat …...

Qt_C++ RFID网络读卡器Socket Udp通讯示例源码
本示例使用的设备: WIFI/TCP/UDP/HTTP协议RFID液显网络读卡器可二次开发语音播报POE-淘宝网 (taobao.com) #ifndef MAINWINDOW_H #define MAINWINDOW_H#include <QMainWindow> #include <QHostInfo> #include <QNetworkInterface> #include <…...
C++ 实现Python 列表list 的两种方法
1、vector里面放多种参数。在C中,如果你想要在std::vector中存储不同类型的参数,你可以使用std::any(C17及以上)或std::variant(C17以前的版本需要使用Boost库或者C17及以上标准)。以下是使用std::vector&l…...

vue3+ elementPlus PC端开发 遇到页面已进入就form校验了的问题
form表单一进页面就校验了 rules里配置的 require 提示语 如图所示代码是这样的 最后发现是form表单下面的一个按钮的展示规则 会导致规则校验 canAddInsured 这个字段的变化会导致form表单校验 这个字段是computed maxInsureds 也是个computed监听 maxInsured.value >1 就…...
transformers DataCollator介绍
本博客主要介绍 transformers DataCollator的使用 from transformers import AutoTokenizer, AutoModel, \DataCollatorForSeq2Seq, DataCollatorWithPadding, \DataCollatorForTokenClassification, DefaultDataCollator, DataCollatorForLanguageModelingPRETRAIN_MODEL &qu…...

rust学习(字节数组转string)
最新在写数据传输相关的操作,发现string一个有趣的现象,代码如下: fn main() {let mut data:[u8;32] [0;32];data[0] a as u8;let my_str1 String::from_utf8_lossy(&data);let my_str my_str1.trim();println!("my_str len is…...

Docker:技术架构演进
文章目录 基本概念架构演进单机架构应用数据分离架构应用服务集群架构读写分离/主从分离架构冷热分离架构垂直分库微服务容器编排架构 本篇开始进行对于Docker的学习,Docker是一个陌生的词汇,那么本篇开始就先从技术架构的角度出发,先对于技术…...

汽车MCU虚拟化--对中断虚拟化的思考(2)
目录 1.引入 2.TC4xx如何实现中断虚拟化 3.小结 1.引入 其实不管内核怎么变,针对中断虚拟化无非就是上面两种,要么透传给VM,要么由Hypervisor统一分发。汽车MCU虚拟化--对中断虚拟化的思考(1)-CSDN博客 那么,作为车规MCU龙头…...

python的继承
本章正式开始之前,先让我们回顾一下什么是 对象 ? 什么是 类 ? 小贝 喜欢 猫咪,今年领养了一只名叫 Kitty 的 布偶猫。则下列哪项是 对象 呢? A. 猫咪 B. Kitty C. 布偶猫 相比之下,闻闻 更喜欢 犬科 动…...

组件的注册和引用
在Vue中,开发者可以将页面中独立的、可重用的部分封装成组件,对组件的结构,样式和行为进行设置。组件是 Vue 的基本结构单元,组件之间可以相互引用。 一.注册组件 当在Vue项目中定义了一个新的组件后,要想在其他组件中…...
SkyWalking 10.2.0 SWCK 配置过程
SkyWalking 10.2.0 & SWCK 配置过程 skywalking oap-server & ui 使用Docker安装在K8S集群以外,K8S集群中的微服务使用initContainer按命名空间将skywalking-java-agent注入到业务容器中。 SWCK有整套的解决方案,全安装在K8S群集中。 具体可参…...

K8S认证|CKS题库+答案| 11. AppArmor
目录 11. AppArmor 免费获取并激活 CKA_v1.31_模拟系统 题目 开始操作: 1)、切换集群 2)、切换节点 3)、切换到 apparmor 的目录 4)、执行 apparmor 策略模块 5)、修改 pod 文件 6)、…...

阿里云ACP云计算备考笔记 (5)——弹性伸缩
目录 第一章 概述 第二章 弹性伸缩简介 1、弹性伸缩 2、垂直伸缩 3、优势 4、应用场景 ① 无规律的业务量波动 ② 有规律的业务量波动 ③ 无明显业务量波动 ④ 混合型业务 ⑤ 消息通知 ⑥ 生命周期挂钩 ⑦ 自定义方式 ⑧ 滚的升级 5、使用限制 第三章 主要定义 …...
IGP(Interior Gateway Protocol,内部网关协议)
IGP(Interior Gateway Protocol,内部网关协议) 是一种用于在一个自治系统(AS)内部传递路由信息的路由协议,主要用于在一个组织或机构的内部网络中决定数据包的最佳路径。与用于自治系统之间通信的 EGP&…...

Mybatis逆向工程,动态创建实体类、条件扩展类、Mapper接口、Mapper.xml映射文件
今天呢,博主的学习进度也是步入了Java Mybatis 框架,目前正在逐步杨帆旗航。 那么接下来就给大家出一期有关 Mybatis 逆向工程的教学,希望能对大家有所帮助,也特别欢迎大家指点不足之处,小生很乐意接受正确的建议&…...

跨链模式:多链互操作架构与性能扩展方案
跨链模式:多链互操作架构与性能扩展方案 ——构建下一代区块链互联网的技术基石 一、跨链架构的核心范式演进 1. 分层协议栈:模块化解耦设计 现代跨链系统采用分层协议栈实现灵活扩展(H2Cross架构): 适配层…...

Mac软件卸载指南,简单易懂!
刚和Adobe分手,它却总在Library里给你写"回忆录"?卸载的Final Cut Pro像电子幽灵般阴魂不散?总是会有残留文件,别慌!这份Mac软件卸载指南,将用最硬核的方式教你"数字分手术"࿰…...
Unit 1 深度强化学习简介
Deep RL Course ——Unit 1 Introduction 从理论和实践层面深入学习深度强化学习。学会使用知名的深度强化学习库,例如 Stable Baselines3、RL Baselines3 Zoo、Sample Factory 和 CleanRL。在独特的环境中训练智能体,比如 SnowballFight、Huggy the Do…...
CMake控制VS2022项目文件分组
我们可以通过 CMake 控制源文件的组织结构,使它们在 VS 解决方案资源管理器中以“组”(Filter)的形式进行分类展示。 🎯 目标 通过 CMake 脚本将 .cpp、.h 等源文件分组显示在 Visual Studio 2022 的解决方案资源管理器中。 ✅ 支持的方法汇总(共4种) 方法描述是否推荐…...

莫兰迪高级灰总结计划简约商务通用PPT模版
莫兰迪高级灰总结计划简约商务通用PPT模版,莫兰迪调色板清新简约工作汇报PPT模版,莫兰迪时尚风极简设计PPT模版,大学生毕业论文答辩PPT模版,莫兰迪配色总结计划简约商务通用PPT模版,莫兰迪商务汇报PPT模版,…...