2020Java面试题及答案,命中率高达90%

▼魔方 西西 提交于 2020-08-12 07:33:34

这份资源我自己历经三年才整理归类出来,现在免费分享给大家;

面试题有:蚂蚁金服、拼多多、阿里云、百度、唯品会、携程、丰巢科技、乐信、软通动力、OPPO、银盛支付、中国平安等初,中级,高级Java面试题集合。

面试题以及答案,已经整理成PDF电子书形式打包在网盘;

 

 

面试题领取微信扫一扫,加好友请备注“博客园面试题”;

 

目录

上海-携程-Java高级面试题.pdf

北京-百度-Java中级面试题.pdf

深圳-乐信-Java高级面试题.pdf

深圳-腾讯-Java高级面试题.pdf

上海-拼多多-Java高级面试题.pdf

深圳-OPPO-Java高级面试题.pdf

上海-拼多多-Java高级面试题.pdf

北京-京东-Java实习生面试题.pdf

北京-京东-Java实习生面试题.pdf

杭州-阿里云Java实习生面试题.pdf

南京-软通动力-Java初级面试题.pdf

深圳-银盛支付-Java中级面试题.pdf

深圳-中国平安-Java中级面试题.pdf

深圳-蚂蚁金服-Java高级面试题.pdf

深圳-丰巢科技-Java高级面试题.pdf

深圳-商汤科技-Java高级面试题.pdf

厦门-中软国际-Java初级面试题.pdf

杭州-蚂蚁金服-Java高级面试题.pdf

杭州-蚂蚁金服-资深工程师面试题.pdf

广州唯品会-Java大数据开发工程师面试题.pdf


上海-携程-16个Java高级面试题

1、描述一下 JVM 加载 Class 文件的原理机制? 

2、什么是类加载器?

3.、类加载器有哪些?

4、什么是tomcat类加载机制?

5、类加载器双亲委派模型机制?

6、Java 内存分配?

7、Java 堆的结构是什么样子的?

8、简述各个版本内存区域的变化?

9、说说各个区域的作用?

10、Java 中会存在内存泄漏吗,简述一下? 

11、Java 类加载过程?

12、什么是 GC? 为什么要有 GC?

13、简述一下 Java 垃圾回收机制?

14、如何判断一个对象是否存活? 

15、垃圾回收的优点和原理,并考虑 2 种回收机制? 基本原理是什么? 

16、深拷贝和浅拷贝?

17、什么是分布式垃圾回收(DGC)?它是如何工作 的? 

 

北京-百度-20个Java中级面试题

1、BeanFactory 和 ApplicationContext 有什么区别

2、Spring Bean 的生命周期 

3、Spring IOC 如何实现 

4、说说 Spring AOP 

5、Spring AOP 实现原理 

6、Spring 事务实现方式 

7、Spring 事务底层原理 

8、如何自定义注解实现功能

9、Spring MVC 运行流程

10、Spring MVC 启动流程 

11、Spring 的单例实现原理 

12、Spring 框架中用到了哪些设计模式 

13、为什么选择 Netty 

14、说说业务中,Netty 的使用场景 

15、原生的 NIO 在 JDK 1.7 版本存在 epoll bug 

16、什么是TCP 粘包/拆包 

17、TCP粘包/拆包的解决办法

18、Netty 线程模型 

19、说说 Netty 的零拷贝 

20、Netty 内部执行流程 

 

杭州-蚂蚁金服-36个Java高级面试题

1. 说说你的⼯工作经历?

2. 项⽬目主要负责哪⼏几个模块?

3. 画出你项⽬目的结构图

4. Eureka是如何进⾏行行服务注册的?

5. 如果服务宕机或者⽆无法访问了了,我还去请求该服务,Eureka会怎么处理理? 会有什什么现象?

6. 谈谈Eureka的保护机制 

7. Ribbon的负载均衡是⾯面向服务内部还是外部的?

8. Ribbon如何实现负载均衡的? 

9. 如果没有Eureka,我能直接通过Ribbon进⾏行行服务请求吗? 

10. Hystrix如何实现熔断?

11. 当服务⽆无法访问时,是直接熔断还是降级

12. 怎么样才会出现熔断?

13. 在Springcloud中,消费者调⽤用提供者的流程是如何的?请画图 springcloud的⼯工作原理理

14. Redis的集群⽅方式有哪些?

15. 如果你原来读取的Redis中的数据,它的数据的结构发⽣生了了变化,如何在 不不改变代码的情况下进⾏行行处理理,使下游业务不不受影响? 

16. Redis的持久化⽅方式有哪些?说说他们的具体实现、

17. 使⽤用Redis的过程中有没有遇到什什么问题

18. Redis的内存回收机制有哪些?

19. Redis的过期策略略有哪些?简单介绍下不不同策略略 

20. 说说Redis的淘汰策略略?淘汰的算法可以修改或者⾃自⼰己重写吗?

21. 你们的项⽬目中消息中间件⽤用的是什什么? 

22. 你们的Rabbit集群是怎么部署的?

23. Rabbit集群之间的数据是如何同步的?同步⽅方式还是异步⽅方式?

24. 一个队列列中的数据你们是存放在⼀一台机⼦子上还是多台机⼦子上?为什什么?

25. RabbitMQ内部结构是怎么样的?请画出RabbitMQ的架构图 

26. 你们公司的数据库有分库分表吗?如何实现的? 

27. Mysql的索引是基于什什么? 

28. 说说B+树 

29. 使⽤用⾃自增ID和UUID作为主键有什什么不不同?

30. 说说数据库的事务隔离级别有哪些?

31. 在代码中,我们如何实现事务? 

32. 如果在⼀一个事务中,代码业务流程很⻓长,会有什什么问题吗?为什什么会出 现这种问题? 

33. 使⽤用volatile关键字的时候有遇到过什什么问题吗?为什什么会出现这种问 题? 34. 请说说volatile的底层实现原理理

35. 如何创建线程池?有什什么参数?线程池的实现原理理

36. 你有什什么问题想问我们的吗?

 

上海-拼多多二面-48个Java高级面试题.pdf

1、并发编程三要素? 

2、实现可见性的方法有哪些?

3、多线程的价值? 

4、创建线程的有哪些方式? 

5、创建线程的三种方式的对比? 

6、线程的状态流转图

7、Java 线程具有五中基本状态 

8、什么是线程池?有哪几种创建方式?

9、四种线程池的创建

10、线程池的优点? 

11、常用的并发工具类有哪些? 

12、CyclicBarrier 和 CountDownLatch 的区别

13、synchronized 的作用?

14、volatile 关键字的作用

15、什么是 CAS 

16、CAS 的问题

17、什么是 Future?

18、什么是 AQS

19、AQS 支持两种同步方式: 

20、ReadWriteLock 是什么 

21、FutureTask 是什么 

22、synchronized 和 ReentrantLock 的区别

23、什么是乐观锁和悲观锁 

24、线程 B 怎么知道线程 A 修改了变量 

25、synchronized、volatile、CAS 比较

26、sleep 方法和 wait 方法有什么区别?

27、ThreadLocal 是什么?有什么用? 28、为什么 wait()方法和 notify()/notifyAll()方法要在同步块中被调

29、多线程同步有哪几种方法?

30、线程的调度策略

31、ConcurrentHashMap 的并发度是什么

32、Linux 环境下如何查找哪个线程使用 CPU 最长 

33、Java 死锁以及如何避免?

34、死锁的原因

35、怎么唤醒一个阻塞的线程 

36、不可变对象对多线程有什么帮助

37、什么是多线程的上下文切换 

38、如果你提交任务时,线程池队列已满,这时会发生什么

39、Java 中用到的线程调度算法是什么 

40、什么是线程调度器(ThreadScheduler)和时间分片(TimeSlicing)? 

41、什么是自旋

42、JavaConcurrencyAPI 中的 Lock 接口(Lockinterface)是什么?对
比同步它有什么优势?

43、单例模式的线程安全性

44、Semaphore 有什么作用 

45、Executors 类是什么?

46、线程类的构造方法、静态块是被哪个线程调用的

47、同步方法和同步块,哪个是更好的选择?

48、Java 线程数过多会造成什么异常? 

 

深圳-中国平安-平安产险-ai部门-Java中级面试题

1. redis各种应⽤用场景 

2. redis持久化机制 

3. mysql调优 

4. 有没了了解Docker,Docker和虚拟机有什什么区别?

 

深圳-中国平安-核⼼系统部,43个面试题

1. 介绍简历上主要项⽬目,画框架图,说流程。

 2. 针对简历上的技能进⾏行行提问。 

3. 说说rabbitmq的结构。 

4. rabbitmq队列列与消费者的关系?

5. rabbitmq交换器器种类。

6. 项⽬目中哪⾥里里⽤用到了了kafka,kafka特性?

7. rabbitmq、RocketMq、kafka对⽐比。

8. 介绍springcloud核⼼心组件及其作⽤用,以及springcloud⼯工作流程。 

9. 介绍springcloud⼼心跳机制,以及消费端如何发现服务端(Ribbon)?

10. eureka的缺点。 

11. eureka缓存机制

12. rpc和http的区别,使⽤用场景? 

13. 分布式事务如何保持⼀一致性? 

14. 什什么情况下⽤用到分布式开发? 

15. jvm内存模型,各个部分的特点?

16. 类加载器器,双亲委派模型? 

17. 类加载机制。 

18. java堆的结构,一个bean被new出来之后,在内存空间的⾛走向?

19. 如何让栈溢出,如何让⽅方法区溢出? 

20. 写出⼏几个jvm优化配置参数。 

21. 有哪⼏几种GC机制?

22. springboot启动过程。

23. 说说⼏几个常⽤用的注解?

24. spring事件的实现原理理,写出常⽤用的⼏几个事件。 

25. spring的bean的⽣生命周期?

26. BeanFactory和FactoryBean的区别。 

27. spring中使⽤用到了了FactoryBean的哪个⽅方法? 

28. 说说HashMap、ConcurrentHashMap数据结构,1.7与1.8的区别? 

29. 谈谈数据结构,⽐比如TreeMap。 

30. B-tree、B+tree? 

31. 红⿊黑树左旋与右旋的区别?

32. concurrent包下有哪些常⽤用类? 

33. 三种分布式锁。

34. 你知道哪些常⽤用的阻塞队列列? 

35. newFixedThreadPool使⽤用到了了哪个阻塞队列列?

36. 说说mysql存储引擎innodb和myisam的区别和使⽤用场景。 

37. 说说mysql查询优化。

38. 说说脏读、不可重复读、幻读; 

39. 说说事务的四种特性(ACID)。 

40. codis与redis集群的区别

41. 要缓存⽹网站登录的⽤用户信息,你有⼏几种⽅方式?

42. 让你设计⼀一套分布式缓存,如何设计可以同时更更新所有服务器器的缓存? 

43. 说说你在⼯工作中遇到的困难或者挑战。

 

北京-京东-14个Java实习生面试题

1、哪些情况下的对象会被垃圾回收机制处理掉?

2、讲一下常见编码方式?

3、utf-8 编码中的中文占几个字节;int 型几个字节?

4、静态代理和动态代理的区别,什么场景使用?

5、Java 的异常体系

6、谈谈你对解析与分派的认识。 

7、修改对象 A 的 equals 方法的签名,那么使用 HashMap 存放这个对象实例的时候,会调用哪个 equals 方法?

8、Java 中实现多态的机制是什么? 

9、如何将一个 Java 对象序列化到文件里?

10、说说你对 Java 反射的理解 

11、说说你对 Java 注解的理解 

12、说一下泛型原理,并举例说明 

13、Java 中 String 的了解

14、String 为什么要设计成不可变的? 

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!