Java面试相关知识点整理
发布日期:2021-05-14 09:31:23 浏览次数:21 分类:精选文章

本文共 1114 字,大约阅读时间需要 3 分钟。

Java面试/学习知识点概览

Java面试学习知识点概率

Java

  1. 基础
  2. 容器
  3. 并发
  4. JVM

计算机基础知识

  1. 计算机网络
  2. 操作系统
  3. 数据结构
  4. 算法

数据库

  1. MySQL
  2. Redis

系统设计

常用框架

  1. Spring
  2. Spring MVC
  3. Spring Boot
  4. MyBatis
  5. JPA
  6. Netty

认证授权

  1. Cookie、Session
  2. JWT
  3. SSO
  4. OAuth2

分布式

  1. Elasticsearch(分布式搜索引擎)
  2. RPC
  3. 消息队列
  4. API网关
  5. 数据库扩展:分库分表、读写分离
  6. 分布式id
  7. 分布式接口幂等性
  8. 分布式限流

微服务

  1. Spring Cloud

其它

  1. 项目
  2. 手撕算法
  3. 源码分析
  4. 设计题:比如给你一个具体的业务场景让你设计解决方案

一个同行soul友给我整理的知识点

JVM相关

  • JVM内存区域组成:程序计数器、堆、栈等
  • gc过程及算法

类加载过程

  • 类加载机制、类加载器
  • 双亲委派机制

多线程

  • 多线程的实现方式
  • 线程的生命周期
  • sleep和wait的区别
  • start方法和run方法的区别
  • 线程池的参数详解以及工作原理

集合类

  • 线程安全的集合类(hashTable,vector)
  • hashMap线程安全吗?为什么?说说它的结构
  • concurrentMap结构

多线程编程

  • volatile关键字,能不能保证原子性,举例说明
  • AQS原理
  • 什么是CAS
  • synchornized原理,和Reentrant Lock区别

基础知识

  • StringBuffer和StringBuilder
  • JAVA的深拷贝和浅拷贝

Spring

  • Spring的特性
  • Spring AOP的两种方式,jdk自带代理,cglib代理,什么时候用jdk自带代理,什么时候用cglib代理
  • 简单说下Spring的IOC原理
  • Spring bean的作用域及生命周期
  • Spring MVC的原理及流程

网络编程

  • TCP的三次握手和四次握手
  • TCP和UDP的区别

其它

  • linkedList和ArrayList的区别
  • Java的子类和父类的初始化顺序
  • 什么是零拷贝
  • 进程和线程的关系
  • callable和runnable的区别
  • 实现单例模式的几种方式,DCL(双重检查锁)
  • happens-before原则和as-if-serial原则
  • 悲观锁和乐观锁
  • CAS的概念,说下CAS的ABA问题,有什么解决方案
  • JMM(Java Memory Model)
  • 如何停止一个线程
  • 共享锁、独占锁
  • 公平锁、非公平锁
  • 可重入锁
  • AOP代理的几种通知方式
  • Spring AOP和aspect AOP的区别
  • 分布式相关
    -CAP理论和BASE理论
    -幂等的概念
    -分布式锁(Redis实现,zk实现)
上一篇:fastjson序列化及反序列化
下一篇:MyBatis-Plus入门及基本用法

发表评论

最新留言

关注你微信了!
[***.104.42.241]2025年04月11日 04时34分11秒