招行卡中心面经

一、

自我介绍
参与的项目
jvm类加载机制(答了双亲委托机制,具体巴拉巴拉)
为什么要使用双亲委托机制
jvm垃圾回收常用算法(答了复制算法,标记整理算法)
如何判断一个对象是否该回收(答了GC root)
哪些对象算GC root
和GC root对象有引用链,这个引用具体指什么
新生代,老年代的区别
如何判断一个对象需要从新生代进入老年代
新生代,老年代哪一个空间大
jvm中的堆和栈有什么区别
生成一个对象什么放在堆,什么放在栈
常用的数据结构有哪些
hashmap,hashtable有什么区别
hashtable怎么保证线程安全地
hashmap的实现
手写hashmap伪代码(put get 初始化函数三个)

二、

面试官一个大叔,一个小伙子,大叔有点秃,应该很强
大叔:自我介绍一下
我:balabala…
大叔:项目难点,怎么解决的?
我:balabala…(渣渣项目,跟着网上教程敲的,实在说不清有什么难点,硬扯)
大叔:emmmm…那说说框架比如spring这些是怎么用在项目里的
我:IOC、aop…
大叔:笑容逐渐消失…
小伙子:我看你简历上说用了redis,什么数据不适合放在redis里?
我:balabala…
可能是我太菜了,大叔想给我讲话的机会,问我:你觉得你最擅长的技术是啥,讲一讲
我(???没有一门擅长的技术,刚好上午看了一上午的索引,就讲这个吧,还有点印象):数据库索引技术,balabala…
大叔:你以后打算干啥?
我(???这是在暗示我不适合做开发吗):Java后台开发…
大叔:我看你人在武汉,来上海实习方便吗?
我(很明显的劝退了…):地方不是问题
大叔:你有什么问题想问我们吗?
我:balabala…

三、

1、先是自我介绍
2、问了简历上的项目和实践经历
3、平时喜欢什么运动,什么水平(哈哈哈平等交流的感觉,没有很严肃,中间还笑得很开心)
4、JVM了解吗?JVM内存
5、数据结构,队列、栈、堆、二叉树
6、平衡二叉树
7、App测试,登录测试
8、死锁的条件
9、你有什么想问我的吗?

四、

一面问题:

用户登陆的信息是存放在哪里?

如果没有登陆信息的客户端,怎么拦截?

多个服务器的信息怎么共享?

不用redis的话怎么实现?

电商项目如何实现的付款?

如果用户已付款,但是没有收到付款确认,怎么处理?

用户查询信息,如果需要插入广告,怎么分页?

五、

全程怼Java项目
-介绍一下这个项目?
-为啥做这个项目?
-用了哪些技术?
-你自学的技术是哪些?
-详细谈谈你对Spring的理解,和Spring Boot有啥区别?
-既然谈到了AOP,你在项目中如何使用AOP的,AOP还能有哪些应用?
-AOP的原理是什么?有哪些实现的方式?
-既然谈到了动态代理模式,请谈谈动态代理有哪些实现方式?(jdk & 字节码方式)
-这2种不同的实现方式中,目标类和代理类的关系是?
-接着深入的谈谈你了解的其他设计模式?(单例模式 工厂模式 抽象工厂模式 建造者模式 策略模式 装饰器模式 迭代器模式 生产者消费者模式 责任链模式 一口气连原理带例子说完)
-既然谈到了生产者消费者模式,请问你项目中是否使用这个模式?
-责任链模式如果让你写你会怎么写?(双端链表)
-策略模式在Java集合框架中是否有用到?装饰器模式呢?
-Redis在项目中怎么用的?为啥这么用?一般Redis的应用场景是什么?
-谈谈Redis的数据类型以及应用场景?是否看过其源码?
-Redis是单线程的还是多线程的?为啥是单线程的还这么快?
-谈谈Redis的过期策略以及内存淘汰机制
-如何解决Redis和和数据库双写一致性的问题?
-用户的注册和登陆你是如何解决的?
-拦截器是如何使用的?
-拦截器和过滤器以及责任链模式有何关系?
-谈谈敏感词过滤算法都有哪些?你是如何实现的?优势是什么?为啥这么设计?时间复杂度如何?
-你做的站内信是否是实时的?如何做成实时的?有没有思路?或者现在想想?
-谈谈你对cookie和session的理解
-谈谈你对token的理解
-谈谈你对分布式session的理解
-谈谈你对微服务框架的理解
-谈谈你对分布式的理解

六、

你可能感兴趣的:(招行卡中心面经)