扎实的java基础

扎实的java基础玩好 JDK 在详细讲解 JDK 之前 LZ 首先要强调下 本文的内容 都是 LZ 个人的主观判断 因此 各位猿友务必结合自己的判断之后 再决定是否要学习 以及学习到什么程度 此外 本文只是告诉你学什么 学到什么程度 本文不会包含太多具体的技术细节讲解 最后 如果大家如果在自学遇到困难 想找一个 java 的学习环境 可以加入我们的 java 学习圈 点击我加入吧 会节约很多时间 减少很多在学习中遇到的难题

大家好,我是讯享网,很高兴认识大家。



玩好JDK

在详细讲解JDK之前,LZ首先要强调下,本文的内容,都是LZ个人的主观判断。因此,各位猿友务必结合自己的判断之后,再决定是否要学习,以及学习到什么程度。

此外,本文只是告诉你学什么,学到什么程度,本文不会包含太多具体的技术细节讲解。
最后,如果大家如果在自学遇到困难,想找一个java的学习环境,可以加入我们的java学习圈,点击我加入吧,会节约很多时间,减少很多在学习中遇到的难题。

在这里插入图片描述
JDK其实就是Java SE Development Kit的缩写,要玩好这东西可不简单。JDK主要包含了三部分,第一部分就是 Java运行时环境 ,这其实就是JVM。此外,第二部分就是 Java的基础类库 ,这个类库的数量还是非常可观的。最后,第三部分就是Java的开发工具 ,它们都是辅助你更好的使用Java的利器。

那么很显然,要玩好JDK,就是要玩好JDK的这三部分。接下来,咱们就逐个的来说一下,每一个部分要学什么,学到什么程度。

第一部分:Java运行时环境

这一部分其实就是常说的jre,而它的核心其实就一个东西,就是JVM。

JVM这个东西,它的重要性LZ不想再强调了,JVM那本书甚至比《Thinking in java》还重要,这已经足见LZ多么看重JVM了。

当然了,只是LZ看重,当然没什么卵用,但只要Java稍微高级一点点的职位,这部分基本上都是面试必问内容,这更加说明了JVM的重要性。

所以,对于JVM,没什么可说的,就是往死里学,往死里研究,能有多深就多深!

第二部分:Java的基础类库

Java的基础类库从你刚开始学Java就开始接触了,但是,直到你结束整个Java生涯,你都不一定能把所有的类都见一遍。

这说明了什么?是不是说明了Java基础类库的庞大?

错!大错特错!这其实真正说明的是,有很多类你完全不必要care它们,因为它们从你接触Java到放弃,都不一定能接触到。

所以,搞清楚哪些类重要,哪些类不重要,就非常有必要了。这可以让你以最短的时间,做最有价值的事。

首先,我们来Java基础类库的包都有哪些,为了使得本文更有代表性,我们取JDK6的包列表。
在这里插入图片描述
程序员如何成就自己扎实的Java基础(玩好JDK)附赠300集学习教程
怎么样?是不是被吓到了?这么多包,而且还这么多陌生的包名,有的连见都没见过,这特么怎么玩?

不要着急,LZ先带你把这些包给分下级别,LZ将这些包一共分为四个级别。

第一级别:精读源码
在这里插入图片描述
该级别包含的包如下:

看这些扎实的java基础源码的目的,更多是为了增加你的阅读代码能力。而且,LZ这里必须要强调一下,像Exception和Error这一类的,就不用读源码了,亲。

其实上面三个包都有一个共同点,那就是这三个包,基本上都是你最常用的了。lang包不用说了,你随便写点啥都得用到,io包和util包也是你平时读写文件和使用数据结构必不可少的。

看源码从这些常用的包下手找手感,LZ个人觉得再合适不过。

第二级别:深刻理解
在这里插入图片描述
该级别包含的包如下:

当然了,这里要强调一点的是,LZ说这些类要深刻理解,而没说要看它们源码,并不是说这些类的源码不能看,或者看了没用。而是这些类的源码往往非常复杂,要了解清楚细节花费的时间是非常多的,因此,花费巨量的时间去研究这么复杂的代码其实没必要的。

不过,如果你在使用这些类的过程中,遇到了问题,这个时候如果看它们源码可以解决的话,那就不要再矜持了,果断看看源码解决你的问题吧,这是最适合的看源码的契机了。

小小的透露一下,LZ看过的JDK源码,基本上全是这么看过来的。遇到了问题不要百度和谷歌,看源码能解决你90%的问题。

此外,看到这四个包的名字,不难看出它们各自代表了什么。reflect代表了反射,net代表了网络IO,nio代表了非阻塞io,concurrent代表了并发。

这四个家伙可以说每一个都够面试官问上半天的,而且,这四个包的内容,如果你要深刻理解的话,其实还牵扯了很多其它的知识。

举个例子,反射你要了解清楚的话,你是不是要搞明白JVM的类加载机制?网络IO要搞清楚的话,你是不是要清楚TCP/IP和HTTP、HTTPS?包括并发包,如果你要搞清楚的话,是不是要了解并发的相关知识?

因此,这四个包要彻底搞清楚,还是需要花费一定时间和精力的。

但是,请相信LZ,这绝对是值得的,甚至可以说,这四个包用的够不够叼,基本决定了一个Java程序员所处的档次。

第三级别:会用即可

该级别包含的包如下:
在这里插入图片描述
程序员如何成就自己扎实的Java基础(玩好JDK)附赠300集学习教程
会用即可,这个级别的要求很显然了,就是会用就可以了。这些包大部分都是在特定的情况下会用到,但却不会时刻用到。

就像sql包和transaction包,就是操作数据库时用到的。而xml、dom和sax这些,都是操作xml时用到的。其它的包也都是类似的,有使用注解时用的,有远程方法调用时用的,也有涉及到加密时用到的等等。

这些包在面试时一般不会问到,所以它们的重要性自然要低很多,而且也不太需要刻意的去学,用到了研究一下,会用即可。

第四级别:请无视它

该级别包含了所有以上没有提到的包。

这个级别就更不用解释了,到现在还没提到的包,基本上可以忽略,因为你基本上不太可能用到它们,比如swing、awt这些玩意儿。

什么?你说你经常用它们?

如果真的是这样的话,那么LZ只能遗憾的告诉你,赶紧跳槽吧,你待在这公司没啥前途的,0-0。

第三部分:Java的开发工具

这些开发工具主要就是辅助你开发的了,javac应该是最常用的一个了,虽然你几乎不用手动执行它。

此外,其实还有一些比较实用的工具,可以帮助你排查问题。而且有的面试官,也会问你这类问题,比如问你平时都用什么工具排查问题。

LZ觉得比较实用的几个工具主要有jmap、jconsole、jstack、jvisualvm,至于这几个工具有什么作用,LZ这里就不提了,如果你要了解这些命令的详细内容,可以去谷歌或者官网上找,还是非常好找的。

针对很多同学提出来的想学习缺没有系统的学习资料,以及健全的java学习路线和知识体系,柠檬在这里为大家准备了 由北京尚学堂高淇老师和马士兵老师亲自录制的java自学视频教程,希望对小伙伴们有所帮助!

资料目录

第一阶段JAVA 快速入门

章节1:JAVA 入门和第一个项目

章节2:流程控制语句和方法

章节3:数组初步

第二阶段JAVA 基础深化和提高

章节1:面向对象深化

章节2:数组深化

章节3:异常机制

章节4:常用类

章节5:容器

章节6:IO 流技术

章节7:多线程技术

章节8:网络编程

章节9:XML 技术

章节10:反射技术

章节11:多线程和并发编程

章节12:手写服务器项目

第三阶段数据库编程和设计

章节1:Oracle 数据库的使用

章节2:SQL 语言

章节3:Mysql 数据库的使用

章节4:JDBC技术

章节5:MyBatis框架

第四阶段网页编程和设计

章节1:HTML5

章节2:CSS3

章节3:JavaScript

章节4:Jquery

第五阶段JAVAEE 和项目开发

章节1:Servlet 技术

章节2:JSP 技术

章节3:JSP和Servlet整合案例

章节4:EL表达式和JSTL标签库

章节5:过滤器和监听器

章节6:Ajax 异步技术和json

章节7:项目:财务管理系统

第六阶段SSM 框架和项目开发

章节1:Spring 框架

章节2:Spring MVC 框架

章节3:SSM 框架整合

章节3:SSM 框架整合

第七阶段JAVA 高级技术

章节1:Linux

章节2:Maven

章节3:Dubbo

章节4:VSFTPD

章节5:Nginx

章节6:Redis

章节7:Solr

章节8:ActiveMQ

章节9:JsonP

章节10:HttpClient

章节11:MyCat

第八阶段电商高级项目_架构/编码

章节1:电商Ego-基于SOA 架构,使用Dubbo,逆向工程,分页插件完成商品查询

章节2:电商Ego-使用VSFTPD 和Nginx 完成商品新增

章节3:电商Ego-基于json 格式完成商品规格参数管理

章节4:电商Ego-使用jsonp 完成前台首页导航菜单

章节5:电商Ego-完成CMS 系统

章节6:电商Ego-添加前台大广告位数据缓存

章节7:电商Ego-完成商品搜索功能

章节8:电商Ego-显示商品详细详情

章节9:电商Ego-完成SSO 单点登录系统

章节10:电商Ego-购物车

章节11:电商Ego-订单系统实现

章节12:电商Ego-ActiveMQ

章节13:电商Ego-MySql 读写分离+MyCat 分库分表

章节14:电商Ego-项目部署

第九阶段设计模式/框架源码分析

章节1:GOF23 设计模式

章节2:Servlet 和Tomcat 底层源码分析

章节3:Mybatis 底层源码分析

章节4:Spring 框架底层源码分析

第十阶段微服务架构

章节1:Spring Boot

章节2:Spring Data

小讯
上一篇 2024-12-29 09:09
下一篇 2024-12-28 07:46

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/8768.html