Java常见面试知识点汇总
Java目前已经不仅仅是一门开发语言,而是一整套生态体系。作为一个Java程序员,既是幸运的,也是不幸的。幸运的是我们有很多轮子可以拿过来用,不幸的是我们有太多的轮子需要学习。但是,无论是日常工作还是面试问题,也都符合二八原则。只要掌握20%的知识,就能解决80%的问题。
那么,Java程序员必须掌握的20%知识点都有哪些呢?
个人认为包括以下内容:
Java基础知识,如集合类、IO、泛型、等。
JVM底层知识,如类加载机制、GC、JVM内存结构等。
Java并发编程知识,如Java内存模型、并发包、线程池、netty等。
开发框架知识,如Spring、mybatis、docker、springboot、springmavc等。
分布式相关知识,如CAP理论、分布式锁、分布式事务、Zookeeper等。
其他基础知识,编程语言、网络方面、数据库、数据结构和算法。
中间件相关知识,如Redis、rabbitMQ、Dubbo等。
服务器相关知识,如tomcat、jetty、jboss等。
以上这些知识,就是最高频的面试问题,以及工作中需要用到的知识。当然,一个程序员想要掌握以上所有知识,可能需要花费很长时间。这个过程注定是漫长且孤独的。