lotus

贵有恒何必三更眠五更起 最无益只怕一日曝十日寒

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

 

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等。

 

以上这些知识,就是最高频的面试问题,以及工作中需要用到的知识。当然,一个程序员想要掌握以上所有知识,可能需要花费很长时间。这个过程注定是漫长且孤独的。

posted on 2019-03-21 14:44  白露~  阅读(487)  评论(0编辑  收藏  举报