重学JavaSe(JavaSe体系介绍)(一)
随着Java的使用,发现的自己的JavaSe的体系越来越不够完善,有些知识的缺失,有些知识的遗忘,所以故做打算将JavaSe重写一遍。这次打算做好更深度更深层次的学习,涉及更多的JDK的源码的阅读,以及对面试题的扩展。学习技术的其中一个目的就是装逼,还有就是拿到更高的工资。只有当你的知识达到一定的高度,一定的深度,才能获取到更好的薪水。
本文大概就会简单的介绍一下JavaSe的体系。后面会更加详细的介绍每一个模块。尽自己的最大的努力做一个更有广度更有深度的笔记。
JavaSe大体的结构图如下图所示:
第一部分:
主要是Java一些基础语法,这些只要不是一个小白,基本上都是会用的,后续的关于这个部分会简单的做个介绍。
第二部分:
流程控制语句,同上差不多,也只是对这个模块做个简单的介绍。
第三部分:
面向对象,Java语言的核心,会详细的介绍关于Java的面向对象的三大特征:封装、继承、多态。以及对面向对象的一些的扩展,其中包括接口、抽象类、内部类。以及一些常考的面试做一个总结。
第四部分:
异常,程序员常常调侃自己,自己在写bug呢!所以是程序一定有bug的存在,我们要保证Java程序在出现异常的时候,要进行对应的处理,不能让程序直接的死掉,这样对用户的体验太差。本部分会对整个Java体系做一个详细的介绍。
第五部分:
我们在工作的过程中,会经常使用一些类,这些类我们称为常用类,本部分会介绍一些常用类,这些类我会尽量从源码的层次分析一些,可能水平不够。以及会介绍一些常用类中的一些的面试题。
第六部分:
集合,面试的重灾区,这部分必须强制自己阅读源码,从底层源码理解这些集合的原理。
第七部分:
IO,网络传输、文件的复制、各种框架等等中都使用IO,可见IO的重要性,后期要想阅读各种框架的源码,IO这块是逃不了的。
第八部分:
线程,随着并发量的越来越大,并发的重要性越来越重,进阶Java工程师必会的技能。并发涉及的知识太广,有关于操作系统的知识,还有计算机组成的知识。
第九部分:
网络编程,这部分工作中写的相关的代码比较少,但是各大框架都会涉及到,其中最著名的Netty框架,就是涉及到网络编程。同时涉及的知识也很广,计算机网络、计算机操作系统、计算机组成的知识。
上面大概是JavaSe的所有的知识,但是没有提到反射、注解等。这些都是高阶知识,后面做笔记会一点点的发散开来。
这是我的第一篇博客,后面会经常写博客,其实就是为了对自己的技术做个总结和归纳。永远记住乔布斯的一句话“Stay Hungry Stay Foolish”