【面试篇】自己整理的一套2020最新版的java面试题

目录

一、java基础知识

二、java底层

三、反射

四、多线程

五、mybatis

六、spring

6.1 基础

6.2 深入

七、springboot

八、 spring cloud

九、redis


一、java基础知识

(1001)面向对象的特征有哪些方面?【基础】

(1002)int 和Integer 有什么区别【基础】

(1003)Math.round(11.5) 等于多少,Math.round(-11.5)等于多少【基础】

(1004)编程题,用最有效率的方法算出2 乘以8 等於几【基础】

(1005)数组有没有 length()方法,String 有没有 length()方法【基础】

(1006)构造器(constructor)是否可被重写(override)【基础】

(1007)是否可以继承String 类【基础】

(1008)当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,那么这里到底是值传递还是引用传递 【基础】

(1009)String、StringBuffer与StringBuilder的区别,及实现原理【基础】

(1010)重载(Overload)和重写(Override)的区别。重载的方法能否根据返回类型进行区分【基础】

(1011)是否可以从一个static 方法内部发出对非static 方法的调用【基础】
(1012)数据去重【基础】

https://blog.csdn.net/qq_30442207/article/details/108167821
(1013)一个“.java”源文件中是否可以包含多个类(不是内部类),有什么限制【基础】

https://blog.csdn.net/qq_30442207/article/details/108167854
(1014)Java 中的 final 关键字有哪些用法【基础】

https://blog.csdn.net/qq_30442207/article/details/108167881
(1015)编码转换,怎样将GB2312 编码的字符串转换为ISO-8859-1 编码的字符串【基础】

https://blog.csdn.net/qq_30442207/article/details/108167897
(1016)error 和exception 有什么区别【基础】

https://blog.csdn.net/qq_30442207/article/details/108167913
(1017)try{}里有一个return语句,那么紧跟在这个try后的finally{}里的代码会不会被执行,什么时候被执行,在return前还是后【基础】

https://blog.csdn.net/qq_30442207/article/details/108167949
(1018)List,Set,Map 是否继承自Collection 接口【基础】

https://blog.csdn.net/qq_30442207/article/details/108167958
(1019)说出ArrayList,Vector, LinkedList 的存储性能和特性【基础】

https://blog.csdn.net/qq_30442207/article/details/108167968
(1020)HashMap 和Hashtable 的区别 【基础】

https://blog.csdn.net/qq_30442207/article/details/108168000
(1021)Arraylist 与Vector 区别【基础】
(1022)List、Map、Set 三个接口,存取元素时,各有什么特点【基础】

https://blog.csdn.net/qq_30442207/article/details/108168018
(1023)sleep() 和wait() 有什么区别【基础】

https://blog.csdn.net/qq_30442207/article/details/108168027
(1024)当一个线程进入一个对象的一个synchronized 方法后,其它线程是否可进入此对象的其它方法 【基础】

https://blog.csdn.net/qq_30442207/article/details/108293509
(1025)Java抽象类abstract【基础】

https://blog.csdn.net/qq_30442207/article/details/108293525
(1027)Integer.parseInt()和这个Integer.valueOf()的详解【基础】

https://blog.csdn.net/qq_30442207/article/details/108293561
(1028)深拷贝和浅拷贝区别【基础】
(1029)获得一个类的类对象有哪些方式【基础】

https://blog.csdn.net/qq_30442207/article/details/108293565
(1030)get 和 post 请求的区别【基础】

https://blog.csdn.net/qq_30442207/article/details/108336010
(1032)Java创建对象的四种方法【基础】

https://blog.csdn.net/qq_30442207/article/details/108336056
(1033)new string(”abc“)创建了几个对象【基础】

https://blog.csdn.net/qq_30442207/article/details/108336076
(1034)重写和重载的区别【基础】

https://blog.csdn.net/qq_30442207/article/details/108336102
(2001)Java 中如何实现序列化,有什么意义【中等】

https://blog.csdn.net/qq_30442207/article/details/108336133
(2002)interface可以有方法的实现吗【中等】

https://blog.csdn.net/qq_30442207/article/details/108336163

二、java底层

(1001)什么是JVM?
(1002)JAVA中的栈和堆
(1012)GC 是什么, 为什么要有GC 【基础】
(2001)描述一下 JVM 加载 class 文件的原理机制【中等】

三、反射

(1001)什么是反射?
(1002)什么是 java 序列化?什么情况下需要序列化?

四、多线程

(1001)多线程开发带来的问题与解决方法?
(1002)synchronized 关键字
(1003)synchronized和 Lock 的区别?(重要)
(1005)说一说几种常见的线程池及适用场景?(重要)
(1006)创建线程的几种方式?(重要)
(1007)线程的几种状态
(1008)Java多线程中线程间的数据传递
(1025)线程同步(7种同步方法)
(1026)多线程有几种实现方法,都是什么,同步有几种实现方法,都是什么【基础】
(1027)在 java 程序中怎么保证多线程的运行安全?
(2001) 怎么防止死锁?
(2003)简述synchronized 和java.util.concurrent.locks.Lock 的异同?【中等】

五、mybatis

(1001)什么是Mybatis
(1002)Mybaits的优点和缺点
(1003)MyBatis与Hibernate有哪些不同?
(1004)MyBatis 中使用#和$书写占位符有什么区别
(1005)SQL 注入攻击?【困难】
(1006)如何执行批量插入
(1007)sql注入问题,jdbc预编译与拼接sql对比
(2001)mybatis的一级和二级缓存详细说明
(2002)mybatis的一级和二级缓存实例说明
(2003)解释一下 MyBatis 中命名空间(namespace)的作用

六、spring

6.1 基础

(1001)解释一下什么叫 AOP(面向切面编程)?【基础】
(1002)你如何理解 AOP 中的连接点(Joinpoint)、...
(1003)Spring MVC的工作原理是怎样的?【基础】
(1003)Spring MVC的工作原理是怎样的图解【基础】
(1004)spring拦截器原理
(1004)spring拦截器原理图解
(2001)什么是 IoC 和 DI?DI 是如何实现的?【中等】
(2002)控制反转(IoC)和依赖注入(DI)的详解以及注解(annotation)开发入门案例
(2003)Spring 支持的事务管理类型有哪些?你在项目中使用哪种方式?【中等】

6.2 深入

 (1001)Spring 框架中的核心组件
 (1002)Spring 框架中的核心组件三个之一:beans
 (1002)Spring 框架中的核心组件三个之一:context
 (1002)Spring 框架中的核心组件三个之一:core
 (1003)Spring 中的bean 是线程安全的吗?

七、springboot

(1001)什么是Spring Boot?
(1002)为什么要用 Spring Boot?
(1003)Spring Boot优点缺点
(1004)Spring Boot 的核心配置文件有哪几个?它们的区别是什么?
(1005)Spring Boot 的配置文件有哪几种格式?它们有什么区别?
(1006)Spring Boot 的核心注解是哪个?它主要由哪几个注解组成的?
(1007)开启 Spring Boot 特性有哪几种方式?
(1008)你如何理解 Spring Boot 中的 Starters?
(1009)如何在 Spring Boot 启动的时候运行一些特定的代码?
(1010)Spring Boot 有哪几种读取配置的方式?
(1011)Spring Boot 如何定义多套不同环境配置

八、 spring cloud

(1001)什么是 spring cloud?
 (1002)SpringBoot和SpringCloud的关系
 (1003)spring cloud 的核心组件有哪些?
 (1004) 微服务的优缺点分别是什么,说下你在项目开发中碰到的坑
 (1005)Eureka和ZooKeeper都可以提供服务注册与发现的功能,请说说两个的区别
 (1007) 负载均衡的意义是什么
 (1008) 什么是服务熔断,什么是服务降级

九、redis

(1001)使用redis有哪些好处?【基础】
(1002)Redis有哪些数据结构?【基础】
(1003)redis支持的java客户端你用过哪个?【基础】
(1004)redis和Memcached的区别,都什么时候使用?
(1005)如何保证Redis与数据库的数据一致性
(2001)Redis缓存穿透、缓存雪崩和缓存击穿
(2002)如果有大量的key需要设置同一时间过期,一般需要注意什么?【中等】
(2003)为什么Redis需要把所有数据放到内存中?【中等】
(2004)Redis提供了哪几种持久化方式?【中等】
(3001)Redis集群的主从复制模型是怎样的?【困难】

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

binggoling

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值