BAT面试文档:培训完java找不到工作
2021/7/6 17:41:19
本文主要是介绍BAT面试文档:培训完java找不到工作,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
一面
1.你觉得项目中用了MQ给你带了什么好处,设计初衷是什么?会带来什么缺点嘛? (项目针对性比较强,不细说)
2.在网页键入taobao.com,到返回一个页面,这期间都发生了什么?
3.你说到了session和cookie,这两者有什么区别,应用场景是啥?
4.返回界面的文字,图片,链接,你觉得是从哪里来的,或者说储存在哪里?
5.描述一下TCP三次握手,这期间可以携带数据吗?携带了数据会造成什么后果?
6.描述一下四次分手,第二次和第三次中间处于何种状态?
7.说一下object类的所有方法以及他们的功能(真的是所有: clone, notify/all,finalize,wait, hashcode, equals, tostring, getclass )
8.抽象类和接口有什么区别?说一下你的个人理解。
9.详细说一下final关键字,修饰变量,方法,类都有什么不同?能想到什么具体应用场
景吗?
10.说一下equals方法,hashmap的底层,跟hashtable,concurrentHashMap都什么 区别
11.静态分派和动态分派的区别?具体应用场景?
12.1 .8concurrentHashMap有什么变化,优化的意义在哪?
13. hashmap除 了结点数大于8,还有什么情况会树化(这个我没想出来,也可能是我没听清楚)
14. hashcode方 法有什么特点? hashset的底层是如何实现的?为什么用hashmap?
15.说说JVM内存结构(这里要问清楚是JMM还是运行时常量池)
16.你刚说1.8后方法区移动到内存中变成元空间,为什么要移过去呢?
17.那为什么常量池没有移动到内存,而是转移到堆了呢?
18.最后一个问题,说一下线程池的饱和策略
因为项目中使用到了MQ,所以就顺便问了下,好在并没有提问太过深入的东西,随后问题几乎每个都是高频考点,2、4、5主要考察计算机网络中的通信过程,例如三次握手/四次挥手,7-14考察Java基础,随后就是和JVM以及多线程有关的问题了。有需要的小伙伴可以参考这个进行针对性的复习。
二面
1.从项目启动到现在,介绍一下你的工作以及遇到的难点,怎么解诀的?
2.讲一下微服务架构都有哪些模块?他们是怎么一起工作的?
3.让你实现一个eureka,你会怎么实现?
4.用户认证,为什么要用JWT,而没用session-cookie, 应用场景?优劣?加密用的是什么算法?
5.为什么使用rabbitMQ,没用别的mq?
6.说一说你项目应用了什么设计模式?适配器模式什么应用场景?
7.让你实现AOP,你怎么实现?
8.spring事务有了解吗?是如何传播的?在你项目里的实际业务中是如何传播的?
9.例如有ABC三个事务,分别原子性,整体也原子性,A事务出错回滚,整体事务也会回滚,你会怎么设计呢?
10. ZooKeeper有 了解吗? redis和Mencache的选型问题?
11.你之前的webServer项目介绍一下整个流程?你是如何做的多线程? socket相关?
12.你怎么使用线程池?参数怎么选择?
13.你写线程的时候会给他们起个可爱的名字吗?为什么要起?线程错误排查工具用过哪些?
14. spring framework都有哪些模块?你使用到了哪些模块?怎么使用的?
15.使用的时候有没有对某模块功能进行扩展?
16.说一下集合类(线程安全角度)
到了二面,就会发现提问的重点发生了明显的变化,从之前的基础知识变成了项目架构方面的,这一轮考察的是平常学习过程中对于架构的使用与理解,现在都偏爱微服务架构,那是否思考过背后的原理?天天在用Spring,你对他到底又有多少认知呢?都知道消息队列好,那好在哪?这些东西都是实际的项目中能接触到,但是又经常会被忽略的东西,就看你是不是一个有心人了。
三面
1.详细介绍一下点云扩增工具项目
2.你对分布式架构有什么理解?
3.你的项目中或在学习过程中有没有遇到过很难的点?然后专心研究去解决掉他的
4.周围有没有优秀的人?有没有值得你学习的点,并且你现在跟着做的?
5.平时看什么书?
6.有没有根据兴趣学习过一些额外的计算机知识,Al领域7 ,
7.在github研究过哪些开源项目?
8.你的职业规划是什么样的?
三面是压力面,所谓压力面是指面试官有意制造紧张气氛,以了解求职者将如何面对工作压力。面试人通过提出生硬的、不礼貌的问题故意使候选人感到不舒服,针对某一事项或问题做一连串的发问,打破沙锅问到底,直至无法回答。其目的是确定求职者对压力的承受能力、在压力前的应变能力和人际关系能力。
这一轮的重点不在于对技术的考察,而在于对人的考察。我一直认为,面试最重要的是将你的核心竞争力摆上台面。之所以会问你基础知识,是因为技术能力是你的核心竞争力之一,但并不只是技术。如果面对压力,如何与人相处,是否有探索精神,这些都是很重要的,毕竟每个老板都喜欢越有压力就越有动力的员工吧。
最后
给读者们一个小福利,有需要这些资料的朋友们可以点击我,即可免费领取资料!
ActiveMQ消息中间件面试专题
- 什么是ActiveMQ?
- ActiveMQ服务器宕机怎么办?
- 丢消息怎么办?
- 持久化消息非常慢怎么办?
- 消息的不均匀消费怎么办?
- 死信队列怎么办?
- ActiveMQ中的消息重发时间间隔和重发次数吗?
ActiveMQ消息中间件面试专题解析拓展:
redis面试专题及答案
- 支持一致性哈希的客户端有哪些?
- Redis与其他key-value存储有什么不同?
- Redis的内存占用情况怎么样?
- 都有哪些办法可以降低Redis的内存使用情况呢?
- 查看Redis使用情况及状态信息用什么命令?
- Redis的内存用完了会发生什么?
- Redis是单线程的,如何提高多核CPU的利用率?
Spring面试专题及答案
- 谈谈你对 Spring 的理解
- Spring 有哪些优点?
- Spring 中的设计模式
- 怎样开启注解装配以及常用注解
- 简单介绍下 Spring bean 的生命周期
Spring面试答案解析拓展
高并发多线程面试专题
- 现在有线程 T1、T2 和 T3。你如何确保 T2 线程在 T1 之后执行,并且 T3 线程在 T2 之后执行?
- Java 中新的 Lock 接口相对于同步代码块(synchronized block)有什么优势?如果让你实现一个高性能缓存,支持并发读取和单一写入,你如何保证数据完整性。
- Java 中 wait 和 sleep 方法有什么区别?
- 如何在 Java 中实现一个阻塞队列?
- 如何在 Java 中编写代码解决生产者消费者问题?
- 写一段死锁代码。你在 Java 中如何解决死锁?
高并发多线程面试解析与拓展
jvm面试专题与解析
- JVM 由哪些部分组成?
- JVM 内存划分?
- Java 的内存模型?
- 引用的分类?
- GC什么时候开始?
JVM面试专题解析与拓展!
9512)]
jvm面试专题与解析
- JVM 由哪些部分组成?
- JVM 内存划分?
- Java 的内存模型?
- 引用的分类?
- GC什么时候开始?
JVM面试专题解析与拓展!
[外链图片转存中…(img-wKgQDNd6-1625559649513)]
这篇关于BAT面试文档:培训完java找不到工作的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-10-05小米13T Pro系统合集:性能与摄影的极致融合,值得你升级的系统ROM
- 2024-10-01基于Python+Vue开发的医院门诊预约挂号系统
- 2024-10-01基于Python+Vue开发的旅游景区管理系统
- 2024-10-01RestfulAPI入门指南:打造简单易懂的API接口
- 2024-10-01初学者指南:了解和使用Server Action
- 2024-10-01Server Component入门指南:搭建与配置详解
- 2024-10-01React 中使用 useRequest 实现数据请求
- 2024-10-01使用 golang 将ETH账户的资产平均分散到其他账户
- 2024-10-01JWT用户校验课程:从入门到实践
- 2024-10-01Server Component课程入门指南