联易融Java社招一面
作者:互联网
一:联易融Java社招一面
1:项目
主要问你负责什么模块,做什么业务,然后问下公司的项目架构。这个比较简单,只要把平时做过的说出来都还好。
2:Java基础
- String类为什么不可以被继承?
- 多线程的实现方式有那些?线程的几种状态,wait和sleep的区别?
- StringBuffer和StringBuilder的区别?
- 抽象类和接口的区别?
- List循环删除有什么问题?
- 为什么重写hashcode方法也要重写equal方法?
- 反射了解吗?如何通过反射实例化对象?
- map接口有什么实现类,有什么区别?
- hashMap和concurentHashMap的区别,hashmap内部的实现原理?(为什么用红黑树不要AVL)
- 父类和字类的加载顺序,构造方法,方法,私有变量中是如何加载的?
- synchronized的原理说下(锁升级)
- lock的实现原理,里面有什么锁(公平锁,非公平锁,独占锁,共享锁)
3:MySQL
- 存储引擎有那些?
- 聚簇索引和非聚簇索引的实现原理?B+树,回表?
- 索引的优化?组合索引,联合索引,子查询,explain?
- 事务的隔离级别?之间有什么区别
- 多并发怎么控制?
- 事务的实现原理?
- 悲观锁for update用过没?什么时候用?
4:redis
- redis为什么快?
- redis底层数据结构(动态字符串,跳跃表,hash表,整型列表,压缩列表,链表)?
- redis数据持久化的方式,之间的区别?
- redis集群方式(哨兵,集群)(崩溃恢复,数据同步方式)?
- redis分布式锁的实现原理?
5:zookeeper
- zab协议?
- zookeeper分布式锁的实现原理?
- cap理论?
- zookeeper分布式锁和redis分布式锁的区别?
6:spring、springmvc、springboot
- ioc流程
- aop实现原理(代理)
- 代理的实现原理(jdk、cglib、javassist编写字节码实现)
- aop在项目中有什么应用?(实现读写库分离)
- spring和springboot的区别?
- springboot的starter机制?
- springboot的实现原理,run方法详细介绍,自动装配怎么实现的?
7:jvm
- 内存模型?
- 垃圾回收算法(分代算法,标记整理算法,为什么要这么设计)?
- 详细介绍下分代算法?
- 为什么要区分老年代和新生代。什么时候新生代会变为老年代?什么时候会发生full gc?
- 类加载,双亲委派原则?
- volatile的作用?
8:dubbo
- 看过dubbo源码吗?(说只会用没看过就跳过了)
9:rpc
-
rpc的实现原理(猜的是代理类去实现各种网络协议,然后进行进行连接的建立,dns寻找对应的网址,然后四次挥手,关闭连接)即链接型功能的增强。
10:kafka
- kafka为什么这么快?(讲了下)
- kafka的重平衡?
11:设计模式
- 了解什么设计模式(我说了代理模式,门面模式,装饰者模式,责任链模式,结合mybatis源码说的)
12:操作系统
- io多路复用的方法(select,poll,epoll的区别)
总结:最后问了下面试官那些方面需要加强,面试官说Java基础还需要加强,其他都还好。
标签:联易融,Java,springboot,区别,实现,redis,社招,原理 来源: https://blog.csdn.net/qq_37469055/article/details/116672756