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项目中定义了一个新的组件后,要想在其他组件中…...
iOS 26 携众系统重磅更新,但“苹果智能”仍与国行无缘
美国西海岸的夏天,再次被苹果点燃。一年一度的全球开发者大会 WWDC25 如期而至,这不仅是开发者的盛宴,更是全球数亿苹果用户翘首以盼的科技春晚。今年,苹果依旧为我们带来了全家桶式的系统更新,包括 iOS 26、iPadOS 26…...
springboot 百货中心供应链管理系统小程序
一、前言 随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受用户的喜爱,百货中心供应链管理系统被用户普遍使用,为方…...
【Oracle APEX开发小技巧12】
有如下需求: 有一个问题反馈页面,要实现在apex页面展示能直观看到反馈时间超过7天未处理的数据,方便管理员及时处理反馈。 我的方法:直接将逻辑写在SQL中,这样可以直接在页面展示 完整代码: SELECTSF.FE…...
从零实现富文本编辑器#5-编辑器选区模型的状态结构表达
先前我们总结了浏览器选区模型的交互策略,并且实现了基本的选区操作,还调研了自绘选区的实现。那么相对的,我们还需要设计编辑器的选区表达,也可以称为模型选区。编辑器中应用变更时的操作范围,就是以模型选区为基准来…...
Vue3 + Element Plus + TypeScript中el-transfer穿梭框组件使用详解及示例
使用详解 Element Plus 的 el-transfer 组件是一个强大的穿梭框组件,常用于在两个集合之间进行数据转移,如权限分配、数据选择等场景。下面我将详细介绍其用法并提供一个完整示例。 核心特性与用法 基本属性 v-model:绑定右侧列表的值&…...
智能在线客服平台:数字化时代企业连接用户的 AI 中枢
随着互联网技术的飞速发展,消费者期望能够随时随地与企业进行交流。在线客服平台作为连接企业与客户的重要桥梁,不仅优化了客户体验,还提升了企业的服务效率和市场竞争力。本文将探讨在线客服平台的重要性、技术进展、实际应用,并…...
k8s业务程序联调工具-KtConnect
概述 原理 工具作用是建立了一个从本地到集群的单向VPN,根据VPN原理,打通两个内网必然需要借助一个公共中继节点,ktconnect工具巧妙的利用k8s原生的portforward能力,简化了建立连接的过程,apiserver间接起到了中继节…...
OpenLayers 分屏对比(地图联动)
注:当前使用的是 ol 5.3.0 版本,天地图使用的key请到天地图官网申请,并替换为自己的key 地图分屏对比在WebGIS开发中是很常见的功能,和卷帘图层不一样的是,分屏对比是在各个地图中添加相同或者不同的图层进行对比查看。…...
精益数据分析(97/126):邮件营销与用户参与度的关键指标优化指南
精益数据分析(97/126):邮件营销与用户参与度的关键指标优化指南 在数字化营销时代,邮件列表效度、用户参与度和网站性能等指标往往决定着创业公司的增长成败。今天,我们将深入解析邮件打开率、网站可用性、页面参与时…...
作为测试我们应该关注redis哪些方面
1、功能测试 数据结构操作:验证字符串、列表、哈希、集合和有序的基本操作是否正确 持久化:测试aof和aof持久化机制,确保数据在开启后正确恢复。 事务:检查事务的原子性和回滚机制。 发布订阅:确保消息正确传递。 2、性…...
