手记

2019年Java面试经典100问,进入BAT不是梦

早起的鸟儿有虫吃。
2019年java面试经典100问,进入BAT不是梦。
2019年马上就要结束了,领完年终奖是不是该跳槽了呢,提前准备起来吧,小伙伴。
本文由公众号「情系IT」整理,设计到的内容由java基础、数据库、SSM框架、redis、消息队列、spring boot、spring cloud、git及一些前端知识。

一、java基础

1、面向对象的特征有哪些方面? 【基础】

2、int 和Integer 有什么区别? 【基础】

3、Math.round(11.5) 等于多少? Math.round(-11.5)等于多少? 【基础】

4、编程题: 用最有效率的方法算出2 乘以8 等於几? 【基础】

5、数组有没有 length()方法?String 有没有 length()方法?【基础】

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

7、是否可以继承String 类? 【基础】

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

9、String 和StringBuffer 的区别?【基础】

10、String, StringBuffer StringBuilder 的区别。【基础】

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

12、描述一下 JVM 加载 class 文件的原理机制?【中等】

13、interface可以有方法的实现吗?【中等】

14、是否可以从一个static 方法内部发出对非static 方法的调用?【基础】

15、GC 是什么? 为什么要有GC? 【基础】

16、垃圾回收器的基本原理是什么?垃圾回收器可以马上回收内存吗?有什么办法主动通知虚拟机进行垃圾回收?【基础】

17、一个“.java”源文件中是否可以包含多个类(不是内部类)?有什么限制?【基础】

18、Java 中的 final 关键字有哪些用法?【基础】

19、编码转换:怎样将GB2312 编码的字符串转换为ISO-8859-1 编码的字符串?【基础】

20、error 和exception 有什么区别? 【基础】

21、try{}里有一个return语句,那么紧跟在这个try后的finally{}里的代码会不会被执行,什么时候被执行,在return前还是后?【基础】

22、List,Set,Map 是否继承自Collection 接口?【基础】

23、说出ArrayList,Vector, LinkedList 的存储性能和特性?【基础】

24、HashMap 和Hashtable 的区别? 【基础】

25、Arraylist 与Vector 区别?【基础】

26、List、Map、Set 三个接口,存取元素时,各有什么特点?【基础】

27、sleep() 和wait() 有什么区别? 【基础】

28、当一个线程进入一个对象的一个synchronized 方法后,其它线程是否可进入此对象的其它方法? 【基础】

29、多线程有几种实现方法,都是什么?同步有几种实现方法,都是什么? 【基础】

30、当一个线程进入一个对象的 synchronized 方法 A 之后,其它线程是否可进入此对象的 synchronized 方法 B?【中等】

31、简述synchronized 和java.util.concurrent.locks.Lock 的异同?【中等】

32、编写多线程程序有几种实现方式?【中等】

33、Java 中如何实现序列化,有什么意义?【中等】

二、数据库

34、阐述 JDBC 操作数据库的步骤。【基础】

35、使用 JDBC 操作数据库时,如何提升读取数据的性能?如何提升更新数据的性能?【中等】

36、在进行数据库编程时,连接池有什么作用?【基础】

37、事务的ACID是指什么?【基础】

38、谈谈脏读、幻读和不可重复读?【中等】

39、JDBC中如何进行事务处理?【中等】

40、获得一个类的类对象有哪些方式?【基础】

41、JSP 有哪些内置对象?作用分别是什么?【基础】

42、get 和 post 请求的区别?【基础】

43、讲解 JSP 中的四种作用域。【基础】

三、SSM框架

44、MyBatis 中使用#和$书写占位符有什么区别?【中等】

45、解释一下 MyBatis 中命名空间(namespace)的作用。【中等】

46、什么是 IoC 和 DI?DI 是如何实现的?【中等】

47、解释一下什么叫 AOP(面向切面编程)?【基础】

48、你是如何理解"横切关注"这个概念的?【中等】

49、你如何理解 AOP 中的连接点(Joinpoint)、切点(Pointcut)、增强(Advice)、引介(Introduction)、织入(Weaving)、切面(Aspect)这些概念?【基础】

50、Spring 支持的事务管理类型有哪些?你在项目中使用哪种方式?【中等】

51、Spring MVC的工作原理是怎样的?【基础】

52、什么是 XSS 攻击?【困难】

53、SQL 注入攻击?【困难】

54、什么是CSRF攻击?【困难】

四、redis

55、使用redis有哪些好处?【基础】

56、Redis有哪些数据结构?【基础】

57、如果有大量的key需要设置同一时间过期,一般需要注意什么?【中等】

58、为什么Redis需要把所有数据放到内存中?【中等】

59、Redis提供了哪几种持久化方式?【中等】

60、如何选择合适的持久化方式?【中等】

61、redis支持的java客户端你用过哪个?【基础】

62、Redis集群的主从复制模型是怎样的?【困难】

63、Redis集群之间是如何复制的?【中等】

64、怎么测试Redis的连通性?【基础】

五、消息队列

65、为什么要用消息队列?【中等】

66、使用消息队列有什么缺点【中等】

67、为什么选用RocketMQ;RocketMQ和ActiveMQ的区别【困难】

68、RocketMQ是怎么保证系统高可用的?【困难】

69、消息中间件集群崩溃,如何保证百万生产数据不丢失?【中等】

六、spring boot

70、Spring Boot 的核心配置文件有哪几个?它们的区别是什么?【中等】

71、Spring Boot 的配置文件有哪几种格式?它们有什么区别?【中等】

72、Spring Boot 的核心注解是哪个?它主要由哪几个注解组成的?【基础】

73、开启 Spring Boot 特性有哪几种方式?【基础】

74、Spring Boot 需要独立的容器运行吗?【基础】

75、如何在 Spring Boot 启动的时候运行一些特定的代码?【中等】

76、Spring Boot 有哪几种读取配置的方式?【中等】

77、Spring Boot 如何定义多套不同环境配置?【中等】

78、SpringBoot中的定时任务如何实现?【中等】

79、我们如何连接一个像 MYSQL 或者 orcale 一样的外部数据库?【中等】

七、spring cloud

80、什么是微服务【中等】

81、微服务之间是如何独立通讯的spring Cloud和 Dubbo有哪些区別?【困难】

82、springcloud如何实现服务的注册和发现【中等】

83、Ribbon和Feign的区别【中等】

84、springcloud断路器的作用【中等】

85、springcloud如何实现服务的注册和发现【中等】

86、springcloud中的组件有那些?【中等】

八、其他

87、cookie和session的区别【基础】

88、一次完整的http请求过程【中等】

89、讲一下长连接【困难】

90、TCP如何保证可靠传输?【困难】

91、URI和URL的区别【中等】

92、http和https的区别?【中等】

93、docker常用命令【中等】

94、什么是Docker镜像?【中等】

95、什么是Docker容器?【中等】

96、什么是Docker Hub?【中等】

97、什么是 Git 复刻(fork)?复刻(fork)、分支(branch)和克隆(clone)之间有什么区别?【中等】

98、“git pull”和“git fetch”之间有什么区别?【中等】

99、使用Ajax的优缺点分别是什么?【中等】

100、跨域问题,谁限制的跨域,怎么解决【困难】

如果文章对您有帮助,请记得点赞关注哟~

1人推荐
随时随地看视频
慕课网APP