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

11次阅读

共计 3452 个字符,预计需要花费 9 分钟才能阅读完成。

早起的鸟儿有虫吃。
2019 年 java 面试经典 100 问,进入 BAT 不是梦。
2019 年马上就要结束了,领完年终奖是不是该跳槽了呢,提前准备起来吧,小伙伴。
本文由公众号「情系 IT」整理,设计到的内容由 java 基础、数据库、SSM 框架、redis、消息队列、spring boot、spring cloud、git 及一些前端知识。
由于篇幅过长,故在此只发布问题,如果想要获取完整的问题及答案,请关注 微 信 公众号「情系 IT」,回复 面试 即可获得 pdf 版经典面试 100 问。公众号二维码如下:

[TOC]

一、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、跨域问题,谁限制的跨域,怎么解决【困难】

如果文章对您有帮助,请记得点赞关注哟~
欢迎大家关注我的公众号:情系 IT,每日推送技术文章供大家学习参考。

正文完
 0