首先Java平台博大精深,一直被誉为互联网霸主;我们都知道互联网技术结构之复杂,所以Java的技术组件,架构也非常之多和复杂;正所谓万丈高楼平地起对吧,想要精通Java,小编提醒大家基础知识必不可少,基础知识我有分为两部分:
1:计算机基础知识
Java也是一门计算机语言,当然暂且不表Java的特点以及和其他语言的对比之类的话。既然是计算机语言那么计算机的基础知识肯定是必备的,操作系统(这个知识最起码在学习Java多线程的时候才能真正的说理解多线程以及多线程调度等等,还有进程管理等等要不很多人动不动就是什么JVM调优,垃圾回收器呀什么什么的,JVM调优并不是简简单单的改动点参数,如果仅仅是改动一点参数就叫JVM调优…对吧其他的这里就不说了);
计算机网络基础知识(最起码的你知道HTTP,TCP/IP,UDP等最基本的这些协议吧,网络通信原理)。
2:程序基础知识
程序的基础知识:
计算机语言的运行原理(例如二进制的计算肯定比十进制的快这些基本的运行原理,还有就是要不你怎么理解JVM对吧等等);
算法(重要,很多互联网大公司很看重这个,算法都不懂,你还说什么代码运行效率;还有就是JDK源码你怎么看都需要算法知识)
数据结构(重要,你去看看Java集合类的源码,哪一个不是数据结构的东西)
下来进入到Java中来说:
首先还是那句话,精通一门语言,那么你必须要从它的平台内部开始,所以JVM就是第一个需要深入了解的东西;JVM怎么进行内存管理(这就常见的堆,栈,方法区,程序计数器等等),ClassLoader(类加载的机制的层次:Bootstr