支付宝的社招面试经历(Java)

感谢投稿

在这里插入图片描述

一面

1、介绍一下自己。

2、项目参与的核心设计有哪些?

3、ArrayList和LinkedList底层。

4、HashMap及线程安全的ConcurrentHashMap,以及各自优劣势

5、Java如何实现线程安全

6、Synchronized和Lock哪个更好?

7、HashMap中的get()方法是如何实现的?

  • 首先向get()方法中传递一个key

  • 在get()方法中调用hash(key),如果key!=null,返回该key的哈希值hash = key.hashCode()^ (h >>> 16),否则返回hash=0

  • 在get()方法中调用getNode(hash,key)方法,获取该key的节点,并返回value

  • getNode()方法中首先要判断Hashtable是否为空且table长度大于0且该hash值对应的table元素不为空,条件成立则判断该节点的哈希值是否等于hash,依次遍历该链表或红黑树,查找key==node.key?返回查找到的节点的value

8、HashMap可以用在哪些场景?

9、JVM,垃圾回收机制,内存划分等

10、SQL优化,常用的索引?

11、还有什么问题需要问的。

二面

1、没有自我介绍,直接问做过哪些Java开发相关的项目。

2、对哪些技术比较熟悉?

3、多线程状态图,状态如何流转?

4、死锁,死锁原因

5、页锁、乐观锁、悲观锁?

6、乐观锁如何保证线程安全?

7、用过线程池吗,对应的好处,如何用?

8、两个10G的文件,里面是一些url,内存只有1G,如何将这两个文件合并,找到相同的url?

10、1000个多并发线程,10台机器,每台机器4核的,设计线程池大小。

11、代码题:两个有序数组,数组中存在重复数字,合并成一个有序数组,去除重复数字。

12、说一下自己的优点。

三面

1、jvm性能调优都做了什么?

2、数据库性能调优如何做?

3、分布式系统原理:CAP,最终一致性,幂等操作等。

4、高并发情况下,我们系统是如何支撑大量的请求的?

5、集群如何同步会话状态。

6、常用NOSQL,有做过比较。

7、什么情况会出现雪崩,以及如何应对?

8、负载均衡的原理。

9、数据库事务属性。

10、与同事沟通的时候,如果遇到冲突了如何解决?

11、工作中觉得哪方面欠缺?

12、有问题要问么?

13、期望薪水?

14、为什么要离开现在的公司?

最后

针对最近很多人都在面试,我这边也整理了相当多的面试专题资料,也有其他大厂的面经。希望可以帮助到大家。

最新整理面试题

在这里插入图片描述

上述的面试题答案都整理成文档笔记。 也还整理了一些面试资料&最新2020收集的一些大厂的面试真题(都整理成文档,小部分截图),有需要的可以点击进入暗号:csdn

最新整理电子书

在这里插入图片描述

最新整理大厂面试文档

在这里插入图片描述

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。一键三连哦!
在这里插入图片描述

谢谢大家的观看!

猜你喜欢

转载自blog.csdn.net/qq_41770757/article/details/109125111