文章目录
- 技术面面试高频考点总结-JAVA篇
- 一、Java基础
- 二、JVM
- 三、并发
- 四、框架
- 五、小结
- 题外话
技术面面试高频考点总结-JAVA篇
大家好呀,这里是小黛!
今天呀,来介绍大家最喜欢的Java篇,Java的八股文,可是非常非常非常庞大了,但,面试中常考的没那么多,今天就来介绍,面试中考察频率最高的Java面试题~
本文,分了四个部分介绍,分别是Java基础,JVM,并发和框架,从四个角度对Java八股文进行分类,并展开介绍!
这份考点总结具备的一些特点:
1)贴近面试:几乎百分之百都是本人面试中遇到的问题;
2)简洁实用:不会涵盖各个方面,但会包括每个专题下最重要的知识和最常考的知识。
3)不给出官方标准答案:一方面可以检验自己的掌握情况,一方面也可以在主动搜寻答案中记忆更加深刻。
本系列过往内容:
技术面面试高频考点总结-计算机网络篇:https://mp.weixin.qq.com/s/13oOfB0z4C1wQc301TcLdQ
技术面面试高频考点总结-MySQL篇:https://mp.weixin.qq.com/s/n_lK4P7jF35ow39e3XhHtQ
技术面面试高频考点总结-C++篇:https://mp.weixin.qq.com/s/VRFkrTImrcUo5rH1gIqLfA
技术面面试高频考点总结-Redis篇:https://mp.weixin.qq.com/s/nHKv3ZMpAdoHyBABX1uKzQ
HR面与反问环节考点总结:https://mp.weixin.qq.com/s/_eFbmQgEGvGxM2LFHWUpSQ
技术面面试高频考点总结-Linux篇:https://mp.weixin.qq.com/s/lBA7hSdLnt3VEVO0evCBwA
技术面面试高频考点总结-操作系统篇:https://mp.weixin.qq.com/s/u4vQGw9qK-do1D7qTaTOug
技术面面试高频考点总结-云原生、微服务架构、K8s、Docker、分布式篇:https://mp.weixin.qq.com/s/_fgkNf2bsFANXruPZjwyEg
小贴士:虽然这份考点总结不会给出答案,但后续在计算机基础知识这里,会给出Linux、C++、JAVA、计算机网络、操作系统、设计模式、数据结构与算法、Redis、MySQL、JS、CSS、VUE、HTML等知识专题的详细版本八股文PDF,包括题目和题目的详细解答,既包括本推送系列的题目解答,也包括一些考频也很高的考点的题目解答。其中后端知识由我来整理,前端知识由一位前端大佬来整理~已经在整理中啦!
下面就开始吧~
一、Java基础
1)Java和C++的区别
2)Java语言的特点
3)JDK、JRE、JVM分别是什么,区别是什么
JRE与JDK的区别
4)讲讲Java的基本数据类型
5)什么是反射,列举一下反射的应用场景,反射的优缺点
6)Java有哪些访问修饰符,他们的可见范围是怎样的
7)介绍一下自动装箱与拆箱
8)介绍一下,在继承中,子类和父类的,构造方法,变量初始化,静态变量初始化,普通代码块,静态代码块的执行顺序
介绍一下代码块与构造函数的执行顺序
9)介绍一下面向对象的三大特性
10)什么是编译时多态和运行时多态
11)介绍一下面向切面编程(AOP)
12)重载和重写的区别
13)静态方法可以调用什么成员,非静态方法可以调用什么成员,为什么
14)面向对象与面向过程的区别
15)接口与抽象类的概念和区别
16)深拷贝和浅拷贝的区别
17)equals()与==的区别
18)列举一下Object类的常见方法
19)String、StringBuffer和StringBuilder的区别
20)String是可变的还是不可变的,为什么这样设计
21)Java异常有哪些
22)介绍一下元注解
23)什么是泛型编程
24)Java的IO流有了解吗,用到了哪些抽象类基类
25)BIO、NIO和AIO的区别是什么
26)介绍一下ArrayList和LinkedList,二者区别是什么
27)讲讲你了解的Set,都有哪些实现方式,他们的区别是什么
28)HashMap是什么,有了解过吗,底层是如何实现的,如何实现添加元素,获取元素,扩容,线程安全吗
29)Java中哪些数据类型是线程安全的,哪些是不安全的
30)如何保证ArrayList的线程安全
31)介绍一下JDK8的新特性
二、JVM
1)什么是运行时数据区
2)内存溢出和内存泄漏的区别,什么时候会发生内存溢出和内存泄漏
3)栈溢出和堆溢出的原因,请举个例子
4)说一下JVM的组成,并介绍一下程序计数器
5)介绍一下运行时常量池和字符串常量池
6)什么是直接内存
7)介绍一下创建对象的过程
8)介绍一下对象的内存布局
9)对象如何进行访问与定位
10)如何判断一个对象是否是垃圾
11)JVM有哪些垃圾回收算法
12)介绍一下你了解的垃圾收集器
13)内存分配和回收的原则,讲讲你了解的
14)如何判断哪些对象已经死亡
15)类加载的过程
16)JVM中有哪些引用
17)什么是双亲委派模型
18)如何判断两个类是否相等
三、并发
1)什么是进程和线程,二者的区别,进程和线程的上下文切换
2)并发和并行的区别
3)同步和异步的区别
4)多线程的优缺点
5)什么是死锁,死锁的必要条件,如何解决死锁
6)sleep()和wait()的区别
7)了解volatile吗,介绍一下
8)介绍一下synchronized,与volatile的区别
9)Lock和synchronized有什么区别
10)什么是线程池,线程池的优缺点,怎么创建线程池
11)线程的生命周期有哪些状态
12)线程有哪些方法
13)线程通信的方式
14)线程池的常见参数有哪些
15)AQS,是什么,原理是什么,有什么作用
16)介绍一下ThreadLocal
17)什么是CAS
18)JUC常用的辅助类知道吗,介绍一下
四、框架
1)什么是SSM
2)Spring是什么,包含哪些模块,Spring、Spring MVC、Spring Boot之间是什么关系
3)Spring Ioc是什么
4)Ioc容器初始化过程
5)依赖注入的实现方法有什么
6)依赖注入的过程
7)依赖注入的注解有哪些
8)什么是Bean,Bean的生命周期
9)介绍一下Bean的作用域
10)如何通过注解创建Bean
11)谈谈你对AOP的理解,AOP是什么,介绍一下Spring AOP的过程
12)AOP的相关注释有哪些
13)谈谈Spring MVC,MVC的工作原理
14)MVC的核心组件有哪些
15)谈谈Spring框架中,用到了哪些设计模式,讲讲这些设计模式的优点
16)Spring管理事务的方式
17)Spring事务的隔离级别有哪几个
18)什么是Mybatis,为什么要使用Mybatis,优缺点
19)Mybatis的一级缓存和二级缓存
五、小结
好的,到此为止,关于JAVA必考的内容就介绍完了~
本系列的初衷就是,给大家一个最快的方式上手技术面面试,过一遍题目,就可以乱杀技术面面试的基础问题了~
希望可以帮到大家~
题外话
这里写一点,最近小黛要更新的内容:
主要更新两个专题,加上整理一些PDF:
面试必考专题:Linux,HR面,操作系统,云原生&分布式&微服务,场景题&智力题,测试开发,前端开发
国企深度揭秘专题:建行运营数据中心,交通银行总行金融科技管培生,航天科工三院三部,交通银行总行软件开发,工商银行软件中心,电信总部云网运营部,渤海银行总行信息科技部,天翼云,中信银行总行信息科技部,中国银行总行信息科技管培生
PDF整理:小黛的秋招百次面经,各地区国企央企推荐,国企央企版本八股文PDF
关于PDF,目前也已经整理了很多PDF资料了,都是免费获取~
想来获取资料的,可以加小窝哈~!
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-DHEOUgYa-1681535883828)(C:\Users\Zz\AppData\Roaming\Typora\typora-user-images\image-20230403072227142.png)]