一个5年的程序员9次面试的经验分享

前言

大家好,我是Java架构师追风,一个工作了11年的老程序员,曾就职于唯品会、京东电商等多家互联网公司,历任java架构师、研发经理等职位,参与并主导千万级并发电商网站与后端供应链研发体系搭建,多次参与电商大促活动技术保障,在此分享一些自己的经验。

这个面试总结,除知识点外,其他的面试均可适用!!!

在这里插入图片描述

非知识点

1、简历要准备好,联系方式一定要正确清晰醒目,项目经历按照时间倒序阐述,注意描述自己在项目中承担的职责。

2、boss直聘反馈相对拉钩会更加迅速及时。

3、不要觉得HR让你回去等消息就是GG了,如果你十分中意可在约定的时间打电话给HR。

4、面试前准备好自我介绍,1分钟左右就可以。

5、干净整洁的外形会加分!加分!加分!

6、面试中你可以把你的面试官往你会的知识上引导。

7、遇到了困扰不要着急,要自信,懂得应变再迅速调整。

8、面试是一个互动的过程,offer一定会有的,稳住。

在这里插入图片描述

Java 知识点

1 Java 基础

1、HashMap的源码,实现原理,JDK8中对HashMap做了怎样的优化。

2、HaspMap扩容是怎样扩容的,为什么都是2的N次幂的大小。

3、HashMap,HashTable,ConcurrentHashMap的区别。

4、极高并发下HashTable和ConcurrentHashMap哪个性能更好,为什么,如何实现的。

5、HashMap在高并发下如果没有处理线程安全会有怎样的安全隐患,具体表现是什么。

6、java中四种修饰符的限制范围。

7、Object类中的方法。

8、接口和抽象类的区别,注意JDK8的接口可以有实现。

9、动态代理的两种方式,以及区别。

10、Java序列化的方式。

11、传值和传引用的区别,Java是怎么样的,有没有传值引用。

12、一个ArrayList在循环过程中删除,会不会出问题,为什么。

在这里插入图片描述

2 JVM

1、JVM的内存结构。

2、JVM方法栈的工作过程,方法栈和本地方法栈有什么区别。

3、JVM的栈中引用如何和堆中的对象产生关联。

4、可以了解一下逃逸分析技术。

5、GC的常见算法,CMS以及G1的垃圾回收过程,CMS的各个阶段哪两个是Stop the world的,CMS会不会产生碎片,G1的优势。

6、标记清除和标记整理算法的理解以及优缺点。

7、eden survivor区的比例,为什么是这个比例,eden survivor的工作过程。

8、JVM如何判断一个对象是否该被GC,可以视为root的都有哪几种类型。

9、强软弱虚引用的区别以及GC对他们执行怎样的操作。

10、Java是否可以GC直接内存。

11、Java类加载的过程。

12、双亲委派模型的过程以及优势。

13、常用的JVM调优参数。

14、dump文件的分析。

15、Java有没有主动触发GC的方式(没有)。

3 数据结构与算法

1、B+树

2、快速排序,堆排序,插入排序(八大排序算法)

3、一致性Hash算法,一致性Hash算法的应用

在这里插入图片描述

4 多线程

1、Java实现多线程有哪几种方式。

2、Callable和Future的了解。

3、线程池的参数有哪些,在线程池创建一个线程的过程。

4、volitile关键字的作用,原理。

5、synchronized关键字的用法,优缺点。

6、Lock接口有哪些实现类,使用场景是什么。

7、可重入锁的用处及实现原理,写时复制的过程,读写锁,分段锁(ConcurrentHashMap中的segment)。

8、悲观锁,乐观锁,优缺点,CAS有什么缺陷,该如何解决。

9、ABC三个线程如何保证顺序执行。

10、线程的状态都有哪些。

11、sleep和wait的区别。

12、notify和notifyall的区别。

13、ThreadLocal的了解,实现原理。

在这里插入图片描述

5 分布式

1、分布式事务的控制。分布式锁如何设计。

2、分布式session如何设计。

3、dubbo的组件有哪些,各有什么作用。

4、zookeeper的负载均衡算法有哪些。

5、dubbo是如何利用接口就可以通信的。

在这里插入图片描述

6 框架相关

1、SpringMVC的Controller是如何将参数和前端传来的数据一一对应的。

2、Mybatis如何找到指定的Mapper的,如何完成查询的。

3、Quartz是如何完成定时任务的。自定义注解的实现。

4、Spring使用了哪些设计模式。Spring的IOC有什么优势。

5、Spring如何维护它拥有的bean。

6、一些较新的东西JDK8的新特性,流的概念及优势,为什么有这种优势。

7、区块链了解如何设计双11交易总额面板,要做到高并发高可用

在这里插入图片描述

其他的就不继续举例下去啦!!!

## 总结

面试成功=干净整洁的外在+扎实的技术基础+表现的忠诚度+其他。

面试是一个双向选择的过程,过程就是个展示并推销自己的机会。

从长远看,看中的应该不止是薪资,还要看你是不是能真的得到锻炼。

最后
新人分享,大家喜欢文章记得点赞哟,你们的点赞就是对我最大的支持和鼓励!

  • 4
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值