【顺丰】-Java岗-顺丰速运后端面经分享
顺丰一面
1项目(大约4个问题)
5 说一说java基础吧,Java是面向对象的嘛,你能讲一下多态吗?
6 那多态里你说的指向实例,指的是什么,是父类还是子类,…出了个相关场景题,一直追问,不记得了
7 Java是值调用还是引用调用?为什么?具体说一下值调用、引用调用
8 String是基本数据类型还是引用类型,String是什么调用?它的引用有几个?他有哪些方法?追问
9 你了解数据库吗?如果我要查询一个表,表里有学号、姓名,通过姓名查找怎么加快查询速率,加索引,给什么字段加索引?
10 你知道哪些索引数据结构?B+,hash,为什么用B+,不用二叉0树?为什么二叉树树高就查询得慢?
11事务有什么作用?为什么要使用事务?
11算法题(说思路):从100个数里面找出5个最大的数
12 算法题:判断一个数是否是2^n,是为true,否的话为false
ps:感觉顺丰的面试官很懂技术,问的不多,但是每个点都会深入,整个面试氛围不会很紧张,就是像一起讨论一样,面试官很nice
顺丰二面
Redis解决分布式session,怎么做?
redis存的具体内容是什么
redis的缓存穿透和雪崩
防止提前秒杀怎么实现?令牌的值为什么设置库存的5倍
介绍MQ在项目中怎么用, MQ处理失败怎么办
MySQL 表结构怎么设计。
表跟表怎么关联的。用户去下单,这个过程中涉及到什么表
数据库怎么优化
怎么加索引
聚簇索引和非聚簇索引的区别
SQL语句:一张表,有姓名,商品,金额,查询购物金额排名前三的 姓名,消费金额。
SELECT name, sum(money)FROM tGROUP BY idORDER BY sum(money)Limit 3
JVM 的内存模型, 局部变量放在哪里
集合 List, Set的区别
ArrayList 初始化 和 扩容
多线程锁的引用场景
项目中遇到的困难,怎么解决
你自己最大的优势在哪里