自学 JAVA 的几点建议

微信公众号:一个优秀的废人
如有问题或建议,请后台留言,我会尽力解决你的问题。

封面.jpg

前言

许久不见,最近公众号多了很多在校的师弟师妹们。有很多同学都加了我微信问了一些诸如 [如何自学 Java ]的问题,我都一一解答了,这是大家对我的信任,我非常感谢。你们知道我现在的职业是 java web 开发,可你们你们不知道的是我在这个份职业之前做的是 Android 开发,一年前通过自学才转过来 java 岗位。下面就跟你们聊聊我的自学经验以及一些建议,希望能帮助到大家。

了解 Java 的前世今生

在学习之前,我相信很多人都是网上直接找教程,开始学。但我跟你们不一样,我会先去网上找一些 Java 相关的发展史来了解一下,很多人可能疑惑这有什么用呢?那些发展史又不会帮你提高你的技术。我告诉你们这里的用处可大了,举个栗子,不去了解你又怎么会知道 JDK 11 已经出了,JDK 8 是目前最多人使用的版本,而你此时找到的是 JDK 6 的教程,学习一段时间后,你发现你的代码跟别人不一样,殊不知人家用的 JDK 8。那么这中间你就浪费了许多时间了,所以了解一门语言的前世今生是很有必要的。

建立学习大纲

很多人不知道怎么学,怎么规划自己的学习路线。对于这种情况我的应对方法是建立学习大纲,比如 java 基础,那你就得想 Java 基础有哪些知识点,然后把它罗列下来做成一个学习大纲或者思维导图。那你在学习之前,你就跟着学习大纲按部就班地学就好了,哪块没攻克的就翻相应的资料重点学习。下面是我整理的简单版的思维导图,给你们做参考,你们的大纲不能像我做的这么简化,你们要逐项展开,比如说Java 基础,应该具体到某一个知识点才行,因为越具体,你学得越清晰。

Java 学习路线

简单说一下,上面我整理的学习大纲分为四个阶段,对于应届生来说,把上面前三阶段掌握了,找到实习工作完全没问题。但如果想更进一步,进 BAT 等公司,可能需要把上面四个阶段都要掌握了。

PS:重中之重的是 Java 基础算法,大厂非常青睐算法好的应届生
PPS:推荐一款好用的思维导图软件:https://mubu.com/inv/929852
PPPS:以上提到的知识点学习教程领取方式见文末

不要浪费时间在找资料上

自学 Java ,我相信很多人一开始都是煞费苦心找资料的,越多越好,越详细越好,因为这样很有满足感,心里想着只要我每天坚持看几个小时很快看完的。殊不知,不断保存教程的结果就是某度云盘里面躺了一大堆教程,就算是每天不睡觉地看还不一定能看完。自制力好的人,估计在保存后会翻出来看两眼,过几天又忘得一干二净了。自制力不好的人更衰,直接让教程在云盘里面积灰。对于初学者来说,只要找到囊括了 Java 基础的资料就可以开始学了。

切忌眼高手低

有些问题需然看起来很简单,很弱智,很傻逼。首先,你动手比光看不做敲记忆更牢固;其次,你敲出来可能会有各种各样奇奇怪怪的问题,而你的水平就是在解决这些问题中提高的。所谓大神都是踩各种各样的坑才过来的。

善于利用搜索引擎

遇到问题,第一时间想到的是网上搜索试试看能不能解决,不能解决再去问人。移动互联网发展到今天,可以毫不夸张的说,你遇到的 99% 的问题都能在网上找到解决办法,剩下的 1% 是因为你还没学会用关键字来搜索。

多思考

学会思考,养成多思考的习惯。在写代码的过程中多想想人家为什么这样写。举个栗子,为什么 java 类只能单继承,而接口却可以多继承,稍加思考你就会知道答案:如果存在多继承,那个两个父类有两个一模一样的方法怎么办,子类就不知道继承哪一个方法。而接口能多继承的原因是:接口中的方法都是方法名,没有函数体,具体的实现需要靠实现类去实现,一旦实现类实现了方法,那么就不存在多个接口有相同的方法名的出现的问题了,因为函数体都是一样的。

熟能生巧

很多人困惑,为什么我看视频的时候很懂,过两天就啥都忘了?其实这是正常的,因为你还没有对知识进行实践归纳。在入门 Java 之后,就需要大量的实战来巩固你的基础。所以说忘了不要紧,先按大纲按部就班学,之后再通过实战来巩固基础。

项目驱动,不要为了学而学

相当一部分初学者都坚持不下去,因为太枯燥了。遇到这种情况,首先你要明确你学习 Java 的目的是什么?我相信很多人最终目的都是--钱。这太正常了,没钱谁愿意做这么费脑力的事啊。但是你是需要通过项目来赚钱的。所以我们学习是要通过项目来驱动的。你要想你学完之后希望鼓捣一个什么东西出来。比如我之前学 Android ,我就是打算弄一个天气预报的APP出来,那有了目标之后,你就开始思考,网上查,这个东西,需要用到什么技术。比如,我当时就是要先会 Javase 才能学安卓,学到了安卓之后又有其他的技术,比如 Android 网络框架,UI框架等等。以项目来驱动自己学习,整个过程将会有趣得多。

最后

如果看到这里,喜欢这篇文章的话,请转发、点赞。微信搜索「一个优秀的废人」,欢迎关注。

回复「1024」送你一套完整的 java、python、c++、go、前端、linux、算法、大数据、人工智能、小程序以及英语教程。

回复「电子书」送你 50+ 本 java 电子书。

编程语言

posted @ 2020-01-17 15:20  JavaFish  阅读(436)  评论(0编辑  收藏  举报