From afc12b1d4b7763f8cf5dbfcd30a60c6b7e30b7ad Mon Sep 17 00:00:00 2001 From: Omooo <869759698@qq.com> Date: Thu, 18 Mar 2021 19:13:59 +0800 Subject: [PATCH] update interview --- blogs/Interview/校招面试.md | 132 ++++++++++++++++++++++++++++++++++++ 1 file changed, 132 insertions(+) create mode 100644 blogs/Interview/校招面试.md diff --git a/blogs/Interview/校招面试.md b/blogs/Interview/校招面试.md new file mode 100644 index 0000000..f45a4f0 --- /dev/null +++ b/blogs/Interview/校招面试.md @@ -0,0 +1,132 @@ +--- +校招面试 +--- + +技术面试 + +Java + +1. 了解 StringBuilder 和 StringBuffer 的区别嘛? + +2. 说说抽象类和接口的区别,运用场景是什么? + +3. 说说你对继承和多态的理解,为什么 Java 是单继承呢,多继承有啥问题? + +4. 如何理解面向对象?面向过程了解嘛? + +5. 说说 ArrayList 和 LinkedList 的区别?是否有线程安全问题?CurrentModifyException 遇到过嘛? + +6. 说说 HashMap 定位 key 索引的过程?HashMap 为什么容量是 2 的 n 次方的设计,为啥不是一个质数设计呢比如 HashTable? + +7. 说说 Java 的异常机制,finally 的作用?final 和 finally 的区别?OOM 和 StackOverFlow 是如何发生的? + +8. IO 和 NIO 的区别? + +9. 说说你对反射的理解?有使用过嘛?反射为什么会损耗性能?获取 Class 有哪几种方式? + +10. 说说你对泛型的理解?如何理解 Java 所谓的假泛型?泛型能够解决什么问题呢?extends 和 super 的区别? + +11. 说说线程池的理解?它的出现解决了哪些问题?ThreadPoolExecutor 几个参数的意思? + +12. 说说你对 synchronized 的理解?说说锁升级的过程?synchronized 锁普通方法和静态方法有啥区别? + +13. 说说你对 volatie 的理解? + +14. Object 有哪些方法?wait/notify 能够解决什么问题? + +15. 说说 sleep、wait、join、yield 的区别? + +16. 静态内部类和成员内部类的区别? + +17. 线程有哪几种状态,如何切换的? + + +JVM + +1. 说说 JVM 的内存区域划分?哪些是线程私有的?方法的参数以及局部变量放在哪个区域? + +2. 说一下类加载机制? + +3. 内存模型了解嘛? + +4. GC 回收算法有了解嘛? + + +Network + +1. 说说 TCP/IP 四层分层结构,每一层有哪些网络协议? + +2. 说说 Get 和 Post 的区别?Restful API 了解嘛? + +3. Session 和 Cookie 的区别? + +4. 说说你对 Http 的理解?Http header 里面通常有哪些信息?常见的 Http 状态码有哪些?Http 如何传输大文件? + +5. Http 有哪些问题?Https 解决了哪些问题?加密算法了解哪些?如何防止中间人攻击?简单说下 RSA? + +6. 说下 TCP 和 UDP 的区别?TCP 是如何实现可靠传输的? + +7. 说下 TCP 的三次握手?FYN 洪水攻击了解嘛?如何防范?三次握手改成两次可以不? + +8. TCP 的四次挥手,为什么最后需要两个 MSL? + +9. DNS 有啥作用?ARP 协议呢? + +操作系统 + +1. 进程和线程的区别? + +2. 进程间通信方式有哪几种?在 Android 都有使用了哪些? + +3. 死锁的几种条件? + +4. 虚拟内存了解嘛?内存的分段和分页的区别? + + +设计模式 + +1. 说说你知道的设计原则? + +2. 手写单例模式,应用场景在哪? + +3. 说说你对观察者模式的理解?使用过 Java 中的 Observe/Observable 嘛?有啥弊端? + +4. 项目中有使用到设计模式吗? + + +Git + +1. 使用过哪些命令? + +2. merge 和 rebase 的区别? + +3. reset --hard 和 --soft 的区别? + +项目 + +1. 检测出来的权限,如何知道是在哪个模块的呢?或者说,如何知道每个模块有哪些权限呢? + +2. 说说你使用的静态分析?Lint 有了解嘛?项目中爆红的 API 有警告是如何做到的? + +3. 说说序列化?如何重写序列化流程呢(ArrayList)?序列化会走构造方法嘛?序列化后的对象和之前的对象是同一个对象嘛?Android 的序列化机制了解嘛? + +4. 项目中有遇到哪些难点,是如何解决的呢? + +5. GitHub 看过哪些项目? + +算法 + +1. 手写二分查找 + +2. 判断合法的 ip 地址 + + +非技术面试 + +1. 自己的优势在哪?说一下对自己的评价 + +2. 为什么没有面 xx 呢? + +3. 平时有哪些学习途径? + +4. 如何看待面试造火箭,工作拧螺丝? \ No newline at end of file