Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: 新增面经-荔枝fm #2

Merged
merged 2 commits into from
Aug 18, 2018
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
61 changes: 61 additions & 0 deletions 后端/2018-08-荔枝fmJava研发-林剑锋.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
> * 时间:2018-08-17 10:00
> * 地点:广州·黄埔大道中
> * 面试时长:大概是60min+60min
> * 面试部门:java实习生
> * 面试者: 林剑锋

***

> * 时间:2018-08-17 10:00
> * 地点:广州·黄埔大道中
> * 面试时长:60min
> * 面试轮次:一面
> * 面试官:部门技术人员

1. ReentrantLock和synchronized的区别以及其底层实现(AQS以及monitorenter和monitorexit两条指令和ACC_SYNCHRONIZED标志)
2. 用ReentrantLock实现读写锁(参考ReentrantReadWriteLock两把锁的实现)
3. 单例模式的实现(讲了枚举、双重检验锁、饿汉式)以及其各个实现之间的优缺点
4. JUC包下的Atomic相关类及其底层实现(unsafe类)
5. ArrayList和LinkedList的区别,以及优缺点
6. 三种IO模型(BIO/NIO/AIO),这里讲到了用户空间和内核空间的情况以及linux底层的支持(select、poll以及epoll),以及了解的相关框架,这里讲了netty。
7. JVM中堆内存的分代
8. JVM中的垃圾回收机制,一个对象的诞生过程以及对象什么时候进入老年代,对象进入老年代的情况
9. 数据库的锁有几种,这里只讲到了MyISAM和Innodb都支持的表锁以及Innodb支持的行锁,后来想想,这里应该可以适当的可扩展一下Innodb的行锁算法(Record-Lock,gap-Lock,next-key-Lock)进行讲解
10. Linux中如何查找某个日志中含有相应关键字的语句,并对其进行输出。在运行时候,如何将含有相应关键字的句子动态的显示到屏幕中
11. redis中有哪几种数据结构
12. redis中如何实现持久化
13. redis的rdb文件和aof文件在集群下的使用
14. redis集群的使用(结合项目讲)
15. redis和mc之间的区别
16. Tcp协议和Http协议之间的关系
17. JDK中的线程池(讲到ThreadPoolExecutor类的相关参数的使用,以及一个线程提交的几种情况)
18. 如何优雅的停止一个线程(刚开始想到stop方法,或者interrupt方法,面完试后,想想应该是添加一个volatile修饰的boolean型变量作为终止标志)
19. 一个线程的生命周期
20. 将一个单向链表反转
21. ThreadLocal的底层原理,为什么要使用ThreadLocal
22. 有什么想问的(问了公司目前的情况【面试官反问对加班的看法】、公司目前所用技术栈、对我的评价【面试官说,理论知识可以,但是实战方面经验不足】)

***

> * 时间:2018-08-17 11:00
> * 地点:广州·黄埔大道中
> * 面试时长:60min
> * 面试轮次:二面
> * 面试官:hr小姐姐

(HR面对我来说有点痛苦,最怕的就是hr面了)

1. 自我介绍
2. 相对于其他的实习生,你的优点是什么,你认为我们招聘你的理由是什么(这个问题在多次的面试过程中被问到,此处在回答的时候试图引导hr转移话题,但是HR抓着不放,转移不了话题,最后回答了不知道)
3. 进入一个项目组,由于先前没有经验,你有多大的把握去完成相应的任务,前提是同等刚刚招聘进来的实习生(我回答一半一半。)
4. 你所在的组织中让你印象最为深刻的一件事或者一个项目
5. 大一的时候学的c语言,为什么后期选用了java
6. 当时为什么参加数学建模竞赛,通过竞赛后了解了哪些不足,事后做了些什么
7. 遇到那些比较难以沟通的人,怎么办
8. 最大的缺点是什么
9. 为什么没参加ACM
10. 最近在看的书或者在了解的知识是什么

***

总结:要对自己有点自信,我也没想到自己可以对着面试官胡说八道这么长时间,在紧张的情况下,可以试图降低语速(方法建议来源于:佳俊),或者适当的喝点水,力求让自己冷静下来