刷完 557 道 Java 面试题的一些感触
这 557 道里除了 Linux 指令是一位朋友提供的,其他都是我在网上找的高频出现的题目,结合原答案 + 自己对问题的理解 + 官方文档 + 实例跑出来的结果,把题目与答案整理到博客与小程序里了。之所以没有做成 PDF 版本,是因为答案里面肯定有不少错误,被指出之后方便实时更新。
说实话,花费了很多精力,但刷着刷着,好像成为了一种学习习惯。扎扎实实把每个问题搞清楚、透彻,而非对着似懂非懂的答案一扫而过,让我体会到了「慢就是快」。
刷题有用吗?有用,但用处其实并没有那么大。
除了算法与数据结构方面和识记类的知识点通过刷题可以得到明显进步;其他原理类、实际配置使用类、解决了实际中的问题类这些方面,通过刷题是没法提高的。
一般面试官的技术水平都是在公司或者项目组里比较高的,一个问题追问下去,基本也就知道你的水平了。
对于不常用的知识点,暂时学会了长时间不用,即使是「大神」也会忘掉,人脑的遗忘规律如此。
我觉得,对于面试,下面这 3 种方式比大范围刷题效率更高:
说清楚和放大你当前项目的业务需求、代码中的技术栈和架构设计以及这么选型的理论依据、自己做出的贡献。说白了就是怎么体现你对业务与满足业务用到的技术的理解,以及你的能力与价值。
找一些非常高频且有代表性的面试题,研究透彻,达到倒背如流的水平。可以在跟面试官交流的过程中,把沟通的问题往自己充分准备的方面引导,体现自己深度,唬住面试官。
扎扎实实把基础打牢:计算机原理、操作系统、网络、数据结构与算法、编译原理。这些内容越精通越好,不管从事什么技术方向都会提高你的技术上限。(我是非科班、自学从事 Java 的,现在深深体会到底层理论基础的重要性,在疯狂的建设中)
后面把 JVM 、Spring 全家桶、算法的高频面试题整理完,刷题这块基本可以告一段落了,准备把精力投入到 JVM 的学习之中。JVM 的学习门槛很高,涉及到了硬件、操作系统、虚拟机规范,各厂商实现的虚拟机特点各异,垃圾收集器的种类繁多。每家公司对框架、中间件的使用千差万别,但不可能不遇到 服务无故宕机、偶现卡顿、加了硬件配置性能依旧不高等 JVM 问题,把 JVM 学精通了基本到哪家公司都可以当个专家。年龄大了就想着越努力越值钱,而不是干着干着就被淘汰了。这是我最近的一点感触,也可能是后面几年的一个努力方向。
当然,做技术的一定要视野开阔。关注新技术、新热点、新语言,通过这些把握新趋势。比如无服务、低代码、go...
更多相关文章
- 读完《MyBatis技术内幕》,聊几句感触
- 最新JGJ311-2013Word版建筑深基坑工程施工安全技术规范 备案号 J
- 最近学的css技术点总结
- 今年写技术博文的几点思考
- 一道高频的面试题:什么是零拷贝技术?
- HashMap的负载因子初始值为什么是0.75?这篇文章以最通俗的方式告
- 面试官:什么是CSRF?(你的钱为什么被转走,这篇文章告诉你答案)