当前位置: 首页 > news >正文

Java 还能不能继续搞了?

在这里插入图片描述
金三银四招聘季已落幕,虽说行情不是很乐观,但真正的强者从不抱怨。

在此期间,我收到众多小伙伴的宝贵反馈,整理出132道面试题,从基础到高级,有八股文,也有对某个知识点的深度解析。包括以下几部分:

  • Java:基础、线程、并发编程、 网络编程、JVM。
  • 框架:Spring Boot、Spring Cloud。
  • 数据库:Redis、MySQL。
  • 架构:系统设计、技术选型、分布式理论等。

准备好迎接金九银十吧!!!

Java 基础

以下面试题可以移步至:

《Java基础面试题》

  1. Java 创建对象有几种方式?
  2. 有了数组为什么还要ArrayList?
  3. 重载和重写的区别
  4. 什么是内部类?应用在什么场景?
  5. 介绍下Java中的四种引用
  6. static都有哪些用法?
  7. HashCode在集合中的作用
  8. Hash冲突怎么处理?
  9. 深拷贝和浅拷贝的区别是什么?
  10. 你知道什么是fail-fast吗?
  11. 介绍下你对红黑树的理解
  12. 异常处理影响性能吗?
  13. 介绍下try-with-resource语法
  14. 你知道哪些数据结构?
  15. AVL树是怎么保持平衡性的?
  16. 为什么红黑树比AVL树效率高?

Java 线程

以下面试题可以移步至:

《Java线程面试题》

《Java线程安全面试题》

  1. 创建线程有几种方法?
  2. 介绍下线程的生命周期?
  3. 如何停止正在运行的线程?
  4. 什么是线程安全?
  5. 线程安全需要保证几个基本特性?
  6. 为什么wait和notify方法要在同步块中调用?
  7. Synchronized和Lock的区别?
  8. 常用的线程池有哪些?
  9. 为什么需要线程池?
  10. 简述一下线程池的工作原理
  11. 线程池的拒绝策略有哪些?
  12. 说说ThreadLocal的原理?
  13. 如何保证线程安全?
  14. 为什么需要确保共享变量的可见性?
  15. volatile是如何保证可见性、有序性?
  16. 谈一下 CAS 机制实现原理?
  17. CAS 机制存在什么问题?
  18. 简述一下synchronized工作原理?
  19. 简述一下synchronized锁升级的过程?
  20. 什么是锁粗化和锁消除?
  21. 为什么 HashMap 是线程不安全的?

Java 并发编程

以下面试题可以移步至:

《Java并发编程面试题》

  1. AQS是什么?
  2. AQS唤醒节点时,为什么是从后往前找?
  3. AQS为什么用双向链表?
  4. AQS为什么要有一个虚拟的head节点?
  5. ReentrantLock 的底层实现
  6. ReentrantLock的公平锁和非公平锁的区别
  7. ReentrantReadWriteLock如何实现读写锁?
  8. CountDownLatch,Semaphore有什么用?
  9. 你知道哪些常用的阻塞队列?
  10. 阻塞队列中的虚假唤醒是什么?

Java 网络编程

  1. 什么是网络编程?
  2. 什么是BIO、NIO、IO多路复用?
  3. Java NIO是New IO还是Non-blocking IO?
  4. 聊一下你对Netty的认识?
  5. Netty和Java NIO是什么关系?
  6. Netty为什么那么高效?

Spring Boot

以下面试题可以移步至:

《Spring Boot面试题 》

  1. 什么是 Spring Boot?
  2. Spring Boot 有哪些核心注解?
  3. Spring Boot 自动装配是什么?
  4. Spring Boot 自动装配原理?
  5. Spring Boot 配置文件的加载顺序
  6. bootstrap.properties 和 application.properties 有何区别 ?
  7. Spring Boot Actuator是什么?
  8. Spring Boot项目如何热部署?
  9. Spring Boot 中的 starter 是什么 ?
  10. Spring Boot 有哪些 starter ?

Spring Cloud

以下面试题可以移步至:

《Spring Cloud 面试题》

  1. Nacos是CP还是AP?
  2. 注册中心应该选择CP还是AP?
  3. Nacos注册中心工作机制是怎样的?
  4. Eureka注册中心工作机制是怎样的?
  5. Eureka自我保护机制原理是什么?
  6. Eureka和Nacos区别
  7. Nacos配置中心长轮询机制是什么?
  8. Nacos配置中心为什么不选择主动推送而是采用长轮询机制?
  9. Nacos配置中心宕机了,会影响服务吗?
  10. 为什么Feign第一次调用耗时很长?
  11. 使用Feign如何实现认证的传递?
  12. Seata中xid如何通过Feign进行全局传递?
  13. Feign底层默认使用什么发送HTTP,有什么问题?
  14. Seata支持那些事务模式?
  15. Gateway和Zuul的区别?

JVM

以下面试题可以移步至:

《JVM 面试题》

  1. 谈一下你对JVM的理解?
  2. JVM 为什么可以实现跨平台?
  3. JAVA内存模型和JVM内存模型有啥关系?
  4. JDK,JRE以及JVM的关系
  5. JDK编译器是怎么工作的?
  6. 类加载机制是什么?
  7. 有哪些类加载器?
  8. 什么是双亲委派机制?
  9. 介绍一下JVM内存区域划分
  10. 堆为什么进行分代设计?
  11. 什么是内存的担保机制?
  12. 为什么Eden:S0:S1 比例是8:1:1?
  13. 描述一下对象内存分配过程
  14. 如何判断对象已死?
  15. 讲一讲内存模型?
  16. 常用的垃圾回收算法有哪些?
  17. 常用的垃圾收集器有哪些?
  18. 常用的JVM调优参数有哪些?

Redis

以下面试题可以移步至:

《Redis 面试题》

  1. 为什么要使用Redis做缓存?
  2. 为什么Redis单线程模型效率也能那么高?
  3. Redis常见数据结构以及使用场景?
  4. Redis的数据结构是如何组织的?
  5. pipeline有什么好处,为什么要用 pipeline?
  6. Redis官方为什么不提供 Windows版本?
  7. Redis 持久化方式有哪些?有什么区别?
  8. 什么是Redis事务?原理是什么?
  9. Redis6.0为什么要引入多线程?
  10. 如何在100个亿URL中快速判断某URL是否存在?
  11. 什么是渐进式rehash?
  12. Redis有哪些的过期策略?
  13. Redis有哪些的淘汰策略?
  14. 什么是BigKey?
  15. 什么是缓存击穿、缓存穿透、缓存雪崩?

MySQL

  1. MySQL索引在什么情况下会失效?为什么?
  2. 描述一下一条SQL的执行流程?
  3. 执行器调用存储引擎后,InnoDB做了什么事?
  4. MySQL是如何保证数据不丢失的?
  5. MySQL是如何保证数据一致性的?
  6. MySQL数据被误删怎么办?
  7. 描述一下MySQL的主从复制流程。
  8. 分库分表有什么好的方案?
  9. 谈一下对MySQL事务隔离的认识?
  10. MySQL是怎么处理并发事务的?
  11. 什么是异构索引表,在分库分表场景下如何应用?

架构

  1. 如何在海量数据中快速检测某个数据?
  2. 消息中间件如何选型?
  3. 如何避免RabbitMQ消息丢失?
  4. 什么情况下可以用微服务架构?
  5. 高并发的系统都是怎么设计出来的?
  6. 什么是限流?你知道哪些限流算法?
  7. 如何理解分布式系统下的CAP理论?
  8. BASE理论又是什么?
  9. 你知道哪些分布式一致性算法?
  10. 如何保证分布式系统中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通讯示例源码

本示例使用的设备&#xff1a; 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中&#xff0c;如果你想要在std::vector中存储不同类型的参数&#xff0c;你可以使用std::any&#xff08;C17及以上&#xff09;或std::variant&#xff08;C17以前的版本需要使用Boost库或者C17及以上标准&#xff09;。以下是使用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)

最新在写数据传输相关的操作&#xff0c;发现string一个有趣的现象&#xff0c;代码如下&#xff1a; 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的学习&#xff0c;Docker是一个陌生的词汇&#xff0c;那么本篇开始就先从技术架构的角度出发&#xff0c;先对于技术…...

汽车MCU虚拟化--对中断虚拟化的思考(2)

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

python的继承

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

组件的注册和引用

在Vue中&#xff0c;开发者可以将页面中独立的、可重用的部分封装成组件&#xff0c;对组件的结构&#xff0c;样式和行为进行设置。组件是 Vue 的基本结构单元&#xff0c;组件之间可以相互引用。 一.注册组件 当在Vue项目中定义了一个新的组件后&#xff0c;要想在其他组件中…...

Linux相关概念和易错知识点(42)(TCP的连接管理、可靠性、面临复杂网络的处理)

目录 1.TCP的连接管理机制&#xff08;1&#xff09;三次握手①握手过程②对握手过程的理解 &#xff08;2&#xff09;四次挥手&#xff08;3&#xff09;握手和挥手的触发&#xff08;4&#xff09;状态切换①挥手过程中状态的切换②握手过程中状态的切换 2.TCP的可靠性&…...

2.Vue编写一个app

1.src中重要的组成 1.1main.ts // 引入createApp用于创建应用 import { createApp } from "vue"; // 引用App根组件 import App from ./App.vue;createApp(App).mount(#app)1.2 App.vue 其中要写三种标签 <template> <!--html--> </template>…...

pikachu靶场通关笔记22-1 SQL注入05-1-insert注入(报错法)

目录 一、SQL注入 二、insert注入 三、报错型注入 四、updatexml函数 五、源码审计 六、insert渗透实战 1、渗透准备 2、获取数据库名database 3、获取表名table 4、获取列名column 5、获取字段 本系列为通过《pikachu靶场通关笔记》的SQL注入关卡(共10关&#xff0…...

【Redis】笔记|第8节|大厂高并发缓存架构实战与优化

缓存架构 代码结构 代码详情 功能点&#xff1a; 多级缓存&#xff0c;先查本地缓存&#xff0c;再查Redis&#xff0c;最后才查数据库热点数据重建逻辑使用分布式锁&#xff0c;二次查询更新缓存采用读写锁提升性能采用Redis的发布订阅机制通知所有实例更新本地缓存适用读多…...

elementUI点击浏览table所选行数据查看文档

项目场景&#xff1a; table按照要求特定的数据变成按钮可以点击 解决方案&#xff1a; <el-table-columnprop"mlname"label"名称"align"center"width"180"><template slot-scope"scope"><el-buttonv-if&qu…...

Java多线程实现之Runnable接口深度解析

Java多线程实现之Runnable接口深度解析 一、Runnable接口概述1.1 接口定义1.2 与Thread类的关系1.3 使用Runnable接口的优势 二、Runnable接口的基本实现方式2.1 传统方式实现Runnable接口2.2 使用匿名内部类实现Runnable接口2.3 使用Lambda表达式实现Runnable接口 三、Runnabl…...

AWS vs 阿里云:功能、服务与性能对比指南

在云计算领域&#xff0c;Amazon Web Services (AWS) 和阿里云 (Alibaba Cloud) 是全球领先的提供商&#xff0c;各自在功能范围、服务生态系统、性能表现和适用场景上具有独特优势。基于提供的引用[1]-[5]&#xff0c;我将从功能、服务和性能三个方面进行结构化对比分析&#…...

云原生时代的系统设计:架构转型的战略支点

&#x1f4dd;个人主页&#x1f339;&#xff1a;一ge科研小菜鸡-CSDN博客 &#x1f339;&#x1f339;期待您的关注 &#x1f339;&#x1f339; 一、云原生的崛起&#xff1a;技术趋势与现实需求的交汇 随着企业业务的互联网化、全球化、智能化持续加深&#xff0c;传统的 I…...

【2D与3D SLAM中的扫描匹配算法全面解析】

引言 扫描匹配(Scan Matching)是同步定位与地图构建(SLAM)系统中的核心组件&#xff0c;它通过对齐连续的传感器观测数据来估计机器人的运动。本文将深入探讨2D和3D SLAM中的各种扫描匹配算法&#xff0c;包括数学原理、实现细节以及实际应用中的性能对比&#xff0c;特别关注…...

CentOS 7.9安装Nginx1.24.0时报 checking for LuaJIT 2.x ... not found

Nginx1.24编译时&#xff0c;报LuaJIT2.x错误&#xff0c; configuring additional modules adding module in /www/server/nginx/src/ngx_devel_kit ngx_devel_kit was configured adding module in /www/server/nginx/src/lua_nginx_module checking for LuaJIT 2.x ... not…...