电子商务网站建设教学,广州旅游网站建设设计,视频直播app源码,长沙房价走势最新消息转载自 面试阿里挂了却拿到网易、点我达offer#xff0c;一个三年经验Java程序员的面试总结
前言
15年毕业到现在有三年多了#xff0c;最近去面试了阿里集团#xff08;菜鸟网络#xff0c;蚂蚁金服#xff09;、网易、滴滴、点我达#xff0c;最终收到点我达、网易o…转载自 面试阿里挂了却拿到网易、点我达offer一个三年经验Java程序员的面试总结
前言
15年毕业到现在有三年多了最近去面试了阿里集团菜鸟网络蚂蚁金服、网易、滴滴、点我达最终收到点我达、网易offer蚂蚁金服二面挂掉菜鸟网络一个月了还在流程中...
最终有幸去了网易。
但是要特别感谢点我达的领导及HR真的非常非常好很感谢他们一直的关照和指导。
面试整体事项
1.简历要准备好联系方式一定要正确清晰醒目项目经历按照时间倒序阐述注意描述自己在项目中承担的职责简历的模板尽量选择简洁的毕竟程序员大部分还是喜欢简单明了的。2.推荐boss直聘我觉得很好用不是广告。3.一般的整体面试流程都是电面-现场面-HR面-等着。4.不要觉得HR说让你回去等消息就是GG了他们也要跟你之前的面试官讨论再向领导汇报如果说不急可能还要和其他候选人比较所以HR让你回去等消息绝对不是说明你完蛋了。5.面试前准备好自我介绍1分钟左右就可以可以写在纸上电面可以照着念等你到了现场面了基本也都快背下来你的自我介绍了。6.准备好扎实的基础这是一切的根源没实力怎么都没用的。7.面试中你可以把你的面试官往你会的知识上引导我遇到过你会什么他不问什么的。8.遇到了设计类题目不要着急面试官不是为了让你几分钟设计一个高并发高可用设计模式完美的架构只是想看看你的思路看看你应变的能力然后给你些提示看看你能否迅速的调整。9.offer都会有的不要着急把面试当成一个交流的过程。
需要准备的知识
以下为在近期面试中比较有印象的问题也就不分公司了因为没什么意义大致分类记录一下目前只想起这么多不过一定要知道这些问题只是冰山一角就算都会了也不能怎么样最最重要的还是坚实的基础清醒的头脑。 Java基础
1.HashMap的源码实现原理JDK8中对HashMap做了怎样的优化。2.HaspMap扩容是怎样扩容的为什么都是2的N次幂的大小。3.HashMapHashTableConcurrentHashMap的区别。4.极高并发下HashTable和ConcurrentHashMap哪个性能更好为什么如何实现的。5.HashMap在高并发下如果没有处理线程安全会有怎样的安全隐患具体表现是什么。6.java中四种修饰符的限制范围。7.Object类中的方法。8.接口和抽象类的区别注意JDK8的接口可以有实现。9.动态代理的两种方式以及区别。10.Java序列化的方式。11.传值和传引用的区别Java是怎么样的有没有传值引用。12.一个ArrayList在循环过程中删除会不会出问题为什么。13.transactional注解在什么情况下会失效为什么。 数据结构和算法
1.B树2.快速排序堆排序插入排序其实八大排序算法都应该了解3.一致性Hash算法一致性Hash算法的应用 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的方式没有。 多线程
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的了解实现原理。
数据库相关 1.常见的数据库优化手段2.索引的优缺点什么字段上建立索引3.数据库连接池。4.durid的常用配置。
计算机网络 1.TCPUDP区别。2.三次握手四次挥手为什么要四次挥手。3.长连接和短连接。4.连接池适合长连接还是短连接。
设计模式 1.观察者模式2.代理模式3.单例模式有五种写法可以参考文章单例模式的五种实现方式4.可以考Spring中使用了哪些设计模式
分布式相关 1.分布式事务的控制。2.分布式锁如何设计。3.分布式session如何设计。4.dubbo的组件有哪些各有什么作用。5.zookeeper的负载均衡算法有哪些。6.dubbo是如何利用接口就可以通信的。
缓存相关 1.redis和memcached的区别。2.redis支持哪些数据结构。3.redis是单线程的么所有的工作都是单线程么。4.redis如何存储一个String的。5.redis的部署方式主从集群。6.redis的哨兵模式一个key值如何在redis集群中找到存储在哪里。7.redis持久化策略。
框架相关 1.SpringMVC的Controller是如何将参数和前端传来的数据一一对应的。2.Mybatis如何找到指定的Mapper的如何完成查询的。3.Quartz是如何完成定时任务的。 4.自定义注解的实现。5.Spring使用了哪些设计模式。6.Spring的IOC有什么优势。7.Spring如何维护它拥有的bean。
一些较新的东西 1.JDK8的新特性流的概念及优势为什么有这种优势。2.如何设计双11交易总额面板要做到高并发高可用。
一些小建议 1.可以去leetcode上刷题换换思路。2.八大排序算法一定要手敲一遍快排堆排尤其重要。3.了解一些新兴的技术。4.面试之后面试官都会问你有没有什么问题千万不要没问题也别傻乎乎的问一些敏感问题。5.了解你要面试的公司的产品及竞争产品。
无论是哪家公司都很重视高并发高可用的技术重视基础重视JVM。
面试是一个双向选择的过程不要抱着畏惧的心态去面试不利于自己的发挥。同时看中的应该不止薪资还要看你是不是真的喜欢这家公司是不是能真的得到锻炼。其实我写了这么多只是我自己的总结并不一定适用于所有人相信经过一些面试大家都会有这些感触。
希望大家都能找到适合自己的公司开开心心的撸代码~