Java开发实战讲解!java开发CPU最低要求

article/2025/9/20 15:53:06

前言

本人是底层 211 本科,刚毕业,⽆科研经历,但是有些项⽬经历。
在国内监控行业某头部企业做过一段时间的实习。
想着投下字节,可以积累⼀下⾯试经验和为金九银十面招做准备。投了简历之后,过了一段时
间,HR 就打电话跟我约时间,
说明一下,我投的是北京 office。
以下就是一个面试的全部过程,分享出来给感兴趣的朋友们一看。

02 JVM

  • 线程
  • JVM内存区域
  • JVM运行时内存
  • 垃圾回收与算法
  • JAVA四种引用类型
  • GC分代收集算法 VS 分区收集算法
  • GC垃圾收集器
  • JAVA IO/NIO
  • JVM类加载器

image

03 JAVA集合

  • 接口继承关系和实现
  • LIST
  • SET
  • MAP

image

04 JAVA多线程并发

  • JAVA并发知识库
  • JAVA线程实现/创建方式
  • 4种线程池
  • 线程生命周期(状态)
  • 终止线程4种方式
  • sleep与wait区别
  • start与run区别
  • JAVA后台线程
  • JAVA锁
  • 线程基本方法
  • 线程上下文切换
  • 同步锁与死锁
  • 线程池原理
  • JAVA阻塞队列原理
  • CyclicBarrier、CountDownLatch、Semaphore的方法
  • voliate关键字的作用(变量可见性、禁止重排序)
  • 如何在两个线程之间共享数据
  • Threadlocal作用(线程本地存储)
  • synchronized和ReentrantLock的区别
  • ConcurrentHashMap并发
  • Java中用到的线程调度
  • 进程调度算法
  • 什么是CAS(比较并交换-乐观锁机制-锁自旋)
  • 什么是AQS(抽象的队列同步器)

image

05 JAVA基础

  • JAVA异常分类及处理
  • JAVA反射
  • JAVA注解
  • JAVA内部类
  • JAVA泛型
  • JAVA序列化(创建可复用的Java对象)
  • JAVA复制

image

06 Spring原理

  • Spring特点
  • Spring核心组件
  • Spring常用模块
  • Spring主要包
  • Spring常用注解
  • Spring第三方结合
  • Spring IOC原理
  • Spring APO原理
  • Spring MVC原理
  • Spring Boot原理
  • JPA原理
  • Mybatis缓存
  • Tomcat架构

image

07 微服务

  • 服务注册发现
  • API网关
  • 配置中心
  • 事件调度(kafka)
  • 服务跟踪(starter-sleuth)
  • 服务熔断(Hystrix)
  • API管理

image

08 Netty与RPC

  • Netty原理
  • Netty高性能
  • Netty RPC实现
  • RMI实现方式
  • Protocol Buffer
  • Thrift

image

09 网络

  • 网络7层架构
  • TCP/IP原理
  • TCP三次握手/四次挥手
  • HTTP原理
  • CDN原理

image

10 日志

  • Slf4j
  • Log4j
  • logBack
  • ELK

image

11 Zookeeper

  • Zookeeper概念
  • Zookeeper角色
  • Zookeeper工作原理(原子广播)
  • Zonde有四种形式的目录节点

image

12 Kafka

  • Kafka概念
  • Kafka数据存储设计
  • 生产者设计
  • 消费者设计

image

13 RabbitMQ

  • 概念
  • RabbitMQ 架构
  • Exchange类型

image

14 Hbase

  • 概念
  • 列式存储
  • Hbase核心概念
  • Hbase核心架构
  • Hbase的写逻辑
  • Hbase VS Cassandra

image

15 MongoDB

  • 概念
  • 特点

image

16 Cassandra

  • 概念
  • 数据模型
  • Cassandra一致hash和虚拟节点
  • Gossip协议
  • 数据复制
  • 数据写请求和协调者
  • 数据读请求和后台修复
  • 数据存储(Commitlog、MemTable、SSTable)
  • 二级索引
  • 数据读写

image

17 设计模式

  • 设计原则
  • 工厂方法模式
  • 抽象工厂模式
  • 单例模式
  • 建造者模式
  • 原型模式
  • 适配器模式
  • 装饰器模式
  • 代理模式
  • 外观模式
  • 桥接模式
  • 组合模式
  • 享元模式
  • 策略模式
  • 模板方法模式
  • 观察者模式
  • 迭代子模式
  • 责任链模式
  • 命令模式
  • 备忘录模式
  • 状态模式
  • 访问者模式
  • 中介者模式
  • 解释器模式

image

18 负载均衡

  • 四层负载均衡 VS 七层负载均衡
  • 负载均衡算法/策略
  • LVS
  • Keepalive
  • Nginx反向代理负载均衡
  • HAProxy

image

19 数据库

  • 存储引擎
  • 索引
  • 数据库三范式
  • 数据库事务
  • 存储过程(特定SQL语句集)
  • 触发器
  • 数据库并发策略
  • 数据库锁
  • 基于Redis分布式锁
  • 分区分表
  • 两阶段提交协议
  • 三阶段提交协议
  • 柔性事务
  • CPA

image

20 一致性哈希

  • Paxos
  • Zab
  • Raft
  • NWR
  • Gossip
  • 一致性hash

image

21 JAVA算法

  • 二分查找
  • 冒泡排序算法
  • 插入排序算法
  • 快速排序算法
  • 希尔排序算法
  • 归并排序算法
  • 桶排序算法
  • 基数排序算法
  • 剪枝算法
  • 回溯算法
  • 最短路径算法
  • 最大子数组算法
  • 最长公共子序算法
  • 最小生成树算法

image

22 数据结构

  • 队列
  • 链表
  • 散列表
  • 排序二叉树
  • 红黑树
  • B-Tree
  • 位图

image

23 加密算法

  • AES
  • RSA
  • CRC
  • MD5

image

24 分布式缓存

  • 缓存雪崩
  • 缓存穿透
  • 缓存预热
  • 缓存更新
  • 缓存降级

image

25 Hadoop

  • 概念
  • HDFS
  • MapReduce
  • Hadoop MaReduce作业的生命周期

image

26 Spark

  • 概念
  • 核心架构
  • 核心组件
  • SPARK编程模型
  • SPARK计算模型
  • SPARK运行流程
  • SPARK RDD
  • SPARK RDD流程

image

27 Storm

  • 概念
  • 集群架构
  • 编程模型
  • Toplogy运行
  • Strom Streaming Grouping

image

28 YARN

  • 概念
  • ResourceMananger
  • NodeMananger
  • ApplicationMaster
  • YARN运行流程

image

29 机器学习

  • 决策树
  • 随机森林算法
  • 逻辑回归
  • SVM
  • 朴素贝叶斯
  • K最近邻算法
  • K均值算法
  • Adaboost算法
  • 神经网络
  • 马尔可夫

30 云计算

  • SaaS
  • PaaS
  • IaaS
  • Docker
  • OpenStack

image

面试题总结

面试文件获取方式:戳这里免费下载(助你面试无忧)

其它面试题(springboot、mybatis、并发、java中高级面试总结等)

算法

  • Adaboost算法
  • 神经网络
  • 马尔可夫

30 云计算

  • SaaS
  • PaaS
  • IaaS
  • Docker
  • OpenStack

[外链图片转存中…(img-KEtzR5KA-1621407833006)]

面试题总结

面试文件获取方式:戳这里免费下载(助你面试无忧)

其它面试题(springboot、mybatis、并发、java中高级面试总结等)

[外链图片转存中…(img-sbTbxcKd-1621407833006)]

[外链图片转存中…(img-GVZ6tQbw-1621407833007)]


http://chatgpt.dhexx.cn/article/Vy76K6er.shtml

相关文章

Java面试题技术类一

前端技术导航大全 1、面向对象编程的三大特性是什么? 2、String 和StringBuffer的区别 3、说出ArrayList,Vector, LinkedList的存储性能和特性 4、Collection 和 Collections的区别 5、HashMap和Hashtable的区别 6、final, finally, finalize的区别 7、Overload和Overri…

Java专项练习(三)

JAVA选择题 401、下列类定义代码,当用来声明对象car,并用Car carnew Car();实例化后,可以通过car对象直接赋值的字段是()402、以下哪个不是Collection的子接口?403、下列说法正确的是( )404、下面的程序将来…

Java学习汇总

6/28日已更新,错误已修改~~~有错误的地方,欢迎大家留言! 目录 一、Java基础篇 1.接口和抽象类的区别 2.重载和重写的区别 3.和equals的区别 4.异常处理机制 5.HashMap原理 6.想要线程安全的HashMap怎么办? 7.ConcurrentHa…

java面经整理

面试问题 一、Java基础1.jdk1.7到jdk1.8HashMap发生了什么变化(底层)?2.jdk1.7到jdk1.8虚拟机发生了什么变化3.String、StringBuilder、StringBuffer4.ArrayList和LinkedList有什么区别?5.ConcurrentHashMap的扩容机制6.接口和抽象…

获得阿里Java开发P7岗“农村穷苦”小伙就得安于现状?

前言 相信大家看到这个标题其实就已经可以联想到我大概是个什么样的情况了,很多人都在生活中或者是网络上甚至是家庭中都大致听过这样的话,“你这样的出生,达到现在这样的生活已经很不错了,还是别为了不切实际的梦想去冒险了&…

Java基础 常见数据结构与算法 项目总结

Java基础 1 Java基础必知必会 1.1 Java语言有哪些特点? 面向对象(封装,继承,多态);平台无关性,平台无关性的具体表现在于,Java 是“一次编写,到处运行(Wri…

Java面试知识点概览(持续更新)

Java 基础 说说自定义注解的场景及实现 利用自定义注解,结合SpringAOP可以完成权限控制、日志记录、统一异常处理、数字签名、数据加解密等功能。 实现场景(API接口数据加解密) 1)自定义一个注解,在需要加解密的方法上添加该注…

java开发工程师面试总结

面试中常被问到的问题 介绍jvmjvm内存模型程序计数器虚拟机栈本地方法栈方法区堆 垃圾回收判断对象是否存活引用计数算法可达性分析算法 垃圾收集算法复制算法标记清除算法,标记整理算法 垃圾收集器新生代收集器SerialParNewParallel Scavenge 老年代收集器Serial O…

Java面试经验总结

目录 Java面试知识点基础常识前端基础知识Java基础知识1、**并行与并发**2、**线程与进程**3、**HashMap和HashTable区别**4、**new对象创建过程原理(在JVM),从执行的角度(其他角度待续)**4、**Volatile和Synchronized**5、**线程创建的几种方法**6、**垃…

java怎么写api接口,绝对干货

正文 下文中截图来源于朋友一个pdf版本的面经,把所以知识点的答案整理了下来,耗费他至少1个月时间,在本文最后部分把这个pdf分享给大家,觉得有用的麻烦点赞关注走一波,谢谢!!!面经中有他的知识点的答案,如下图示例,非常详细(文末有领取方式)!!! 1.数据结构与算…

Java开发校招面经

面试 当前面经欠缺:docker,k8s容器,spark,flink,hbase,hive,java网络编程(netty) 一,JAVA 重写和重载 重写:方法签名要完全相同(方…

数据结构:链表逆序输出

数据结构&#xff08;一&#xff09;&#xff1a;链表逆序输出 题目描述&#xff1a;创建一个链表&#xff0c;并将链表逆序输出&#xff0c;链表中以输入0作为结束 关键代码详解&#xff1a; 附&#xff1a;全部代码 #include<stdio.h> #include<stdlib.h> #…

链表逆序 java_链表逆序(JAVA实现)

题目:将一个有链表头的单向单链表逆序 分析: 链表为空或只有一个元素直接返回; 设置两个前后相邻的指针p,q,使得p指向的节点为q指向的节点的后继; 重复步骤2,直到q为空; 调整链表头和链表尾; 图解: 以链表A->B->C->D为例,逆序此链表。 0.初始状态 …

2-6 链表逆序及其C++实现

更多系列博文请点击&#xff1a;0-数据结构与算法链接目录 2-6 链表逆序 我只介绍两种常用方法吧&#xff0c;非递归方法 和 递归 方法 我觉得够用就行 1、非递归方法&#xff1a; 将第二个元素后面的元素依次插入到头结点后面&#xff0c; 最后再把原始第一个元素放到原…

c语言 数据结构 双向循环链表逆序

双链循环链表排序&#xff1a; 原链表&#xff1a; 1 2 3 4 5 6 7 8 9 10 逆序后&#xff1a;10 9 8 7 6 5 4 3 2 1 思路&#xff1a; 把最后一个节点删除&#xff0c; 插到head下面去 数据 1 不用管&#xff0c; 把后面的数据往 1 前面怼&#xff0c; 1自然就是最后一个了…

C语言实现链表的逆序的几种方式

文章目录 通过头插法实现的通过双指针实现链表的逆序通过栈来实现的通过递归来实现 通过头插法实现的 1、通过头插法&#xff08;两条链表&#xff09;来实现的。通过遍历原来的链表&#xff0c;将遍历得到的每一个节点都插入到新链表的头结点&#xff0c;然后遍历新链表&…

C语言单向链表的逆序输出

最近在学习链表&#xff0c;看到书上说可以采取每次在链表头部插入新增节点的方法&#xff0c;将链表逆序&#xff0c;也就是建立的链表节点内容与数据的输入顺序相反。我便来了兴趣&#xff0c;想着试试看&#xff0c;结果没搞懂&#xff0c;于是开始百度。看了几遍博客后终于…

样本方差与总体方差的区别

为什么80%的码农都做不了架构师&#xff1f;>>> 之前一直对于样本方差与总体方差的概念区分不清&#xff0c;对于前者不仅多了“样本”两个字&#xff0c;而且公式中除数是N-1&#xff0c;而不是N。现在写下这么写东西&#xff0c;以能彻底把他们的区别搞清楚。 总…

彻底理解样本方差为何除以n-1

设样本均值为&#xff0c;样本方差为&#xff0c;总体均值为&#xff0c;总体方差为&#xff0c;那么样本方差有如下公式&#xff1a; 很多人可能都会有疑问&#xff0c;为什么要除以n-1&#xff0c;而不是n&#xff0c;但是翻阅资料&#xff0c;发现很多都是交代到&#xff0c…