微信搜索【程序员囧辉】,关注这个坚持分享技术干货的程序员。

前言

本文已经出了最新版,建议查询最新版:0 基础 Java 自学之路(2021年最新版)

最近逛知乎的时候,经常看到有人在问“0基础如何自学Java”、“干了几年**,想转行干Java靠谱吗”等问题。不禁让我回想起了自己当初自学Java的日子,因此在这个周末花了点时间,整理了这篇文章,希望对这些正打算自学Java的或者打算转行Java的人有点帮助。

我的自学之路

先告诉你们我的自学过程可能让你们有点参考。

大三的时候,班主任请了2个已经拿到offer的实验室同学来跟我们传授一些经验。听完对自己的感触挺大的,自己也第一次认真的考虑了就业的问题,当时感觉自己什么都不会,学了点C语言也不知道能干什么。在当时我的心里,特别羡慕那些能开发出一个网站的同学。因此,自己也把目标定为:要搞网站开发。在询问了一些有经验的同学后,开始踏入了自学Java的道路。

我也忘了当时是怎么找到马士兵的视频的,在听了马老师的教程后,我被马老师讲课的方式和声音深深的吸引了,因此就在网上到处找马老师的教程,于是,我当时Java的所有知识几乎都是从马老师这学的。马老师的教程尽管在现在来看有点老,并且有人说内容有错误的地方,但是我个人仍然觉得是一个很好的Java入门教程,并且也看到过很多人跟我有同样的想法。马老师讲课的声音很好听,并且有点幽默,不会很枯燥。

大三的课程已经很少了,凑到一起估计一周就2天的课,我在其他的时间基本都会搬着电脑去学院的实验室里学习(实验室氛围好)。在大三的那个寒假,我在家里每天也至少保持4-6小时的学习。

由于大四刚开学就马上要校招了,因此在大三的暑假,我也是在学校度过的,当时我们宿舍有1个出去实习了(培训过),然后我们剩下3个都没回去,还有1个其他宿舍的搬来我们宿舍。我们4个基本都是学习半天,联机CS半天,氛围贼hi,现在想起来还挺怀念的。

通过大三这一年的学习,我也终于能开发一个小型的网站了,这也帮助我在大四春招刚开始的时候就拿到了第一份offer。

几点经验/建议

  1. 看了我的自学之路,相信你们也看出来了,自学是一个既寂寞又漫长的过程,每天默默的背着电脑到实验室呆到天黑,大学的诱惑如此之多,能静下心来特别不容易。
  2. 我个人感觉,企业在校招时,会适当的放低要求,但会比较看重你的学习能力,因为你的学习能力代表着你未来的高度,如果你是自学的在这方面会有加分。如果你不是学生,而是想转行入It的,意味着你必须付出更多的努力,因为企业对于非校招生的要求一般都比较高。
  3. 如果你现在大二,恭喜你,你的起点已经比我高了。如果你已经大三了,那也没关系,抓紧时间开始动起来,时间还来得及。
  4. 如果你现在大一,我想对你说:不要把大学的时间浪费了,每天花点时间学习,你会发现,你毕业的时候比别人厉害太多了。我现在经常懊恼自己大学的时候花了太多时间在玩游戏上面,但是时间不会倒退,我们只有做好现在。
  5. 如果你想在It行业混的不错,需要不断的学习,先问问自己能否做到。
  6. 自学的过程一定要敲代码,不要只看不动手,只看不动手到最后你什么都敲不出来。
  7. 如果班上有Java学的好的同学,跟他搞好关系(请吃饭啥的,你懂的),遇到不会的多向他请教。初学者有问题没地方问的话很伤,会让你学习的进度大大减慢。

学习过程

废话了那么多,下面进入正文,整个学习过程,大概分5个阶段。

1.Java基础

  • 计算机基础、Java简介、JDK下载安装、JDK环境变量配置、第一个程序HelloWorld。
  • Java基础语法、面向对象、异常处理、数组、多态、集合、IO、线程、反射等。

2.SQL语句、JDBC及MySQL学习

  • 包括SQL简介、SQL基础语法、SELECT、UPDATE、INSERT和DELETE语句的基本使用。
  • JDBC的基本使用。
  • MySQL的使用。

3.Java Web相关内容

  • HTML、CSS和JavaScript的基本使用(能看懂、能照着改就OK)。
  • Servlet和Jsp的基本使用。
  • 了解Session、Cookie。
  • 了解Ajax、jQuery等。
  • 实战JavaWeb项目将上面的内容串起来。

4.Java EE相关内容。

  • Spring + Spring MVC + Mybatis(或Struts 2 + Spring + Hibernate)框架学习。
  • SSH/SSM框架的相关项目实战训练(至少2-3个)。

5.其他一些高频知识

  • 常见的设计模式:例如单例模式。
  • Maven的使用。
  • GIT和SVN的使用。

学完这些,如果你还有时间,千万不要就此放松了,将上面的知识在反复熟练。此时,你可能已经可以进行一些基本的功能开发了,但是有很多原理的东西都还不理解。因此,还需要针对面试准备一段时间,主要是看那些高频的初级面试题。网上很多,随便搜一下都有。

教程获取

针对以上这些知识点网上很多培训网站都有视频教程,大家可以自己去拿自己需要的。另外,本人花了半天时间将自己当时看的视频教程找了出来,痛苦的一匹,海里捞针一样,很多自己还要下载下来确认,可能比较老了,但是还是很不错的。

由于直接放地址在这边,链接太容易无效了,所以有需要的请关注我的个人公众号(文末有二维码),发送关键字 “JAVA自学之路” 自行获取。

结语

最后,送大家几句我很喜欢的励志佳句,也希望文章对你有帮助。

  • 将来的你一定会感激现在拼命的自己。
  • 你必须非常努力,才能看起来毫不费力。
  • 当你的才华还撑不起你的野心的时候,你就应该静下心来学习。
  • Thought is already is late, exactly is the earliest time.
  • 越努力,越幸运。

另外,我还准备了很多大厂面试资料、0基础自学教程,由于不能放外链,所以有需要的小伙伴去公众号【程序员囧辉】回复【资料】自行获取好了。

0基础Java自学之路相关推荐

  1. 0 基础 Java 自学之路(2022年最新版)

    这是专门针对小白的零基础Java教程. 为什么要学Java? 因为Java是全球排名第一的编程语言,Java工程师也是市场需求最大的软件工程师,选择Java,就是选择了高薪. 为什么Java应用最广泛 ...

  2. 我与Java的故事以及0基础Java自学之路(2022最新版)

    文章目录 我与Java的故事 一.JSP.Servlet推荐自学路线 二.Spring推荐自学路线 三 SpringMVC推荐自学路线 四 Mybatis.MyBatisPlus推荐自学路线 五 Sp ...

  3. 零基础 Java 自学之路(2021年最新版)

    前言 无论你是否想自学 Java,认真看完本文,你以后的职场生涯至少少走1年弯路. 本文会持续更新,建议收藏. 初衷 在 CSDN 上经常有同学私聊我询问 "如何自学 Java". ...

  4. 0基础java自学 (2022年最新)欢迎评论一起交流学习

    java 语言 1.1 java特点 ​ 1.java语言是面向对象 2.java语言是健壮的,java的强类型机制,异常处理,垃圾的自动收集等是java程序健壮性的重要保障 3.java是跨平台的 ...

  5. JAVA自学之路 [原创 - 尚学堂科技 - 马士兵老师]

    (我觉得看了之后挺不错的所以分享一下) JAVA自学之路 一:学会选择 为了就业,不少同学参加各种各样的培训. 决心做软件的,大多数人选的是java,或是.net,也有一些选择了手机.嵌入式.游戏.3 ...

  6. JAVA自学之路——马士兵

    JAVA自学之路--马士兵  2007年11月06日 星期二 05:47 P.M.[原创 - 尚学堂科技 - 马士兵老师]    JAVA自学之路 一:学会选择  [转载请注明出处:http://ww ...

  7. Java自学之路 - 马士兵

    一.学会选择 为了就业,不少同学参加各种各样的培训. 决心做软件的,大多数人选的是java,或是.net,也有一些选择了手机.嵌入式.游戏.3G.测试等. 那么究竟应该选择什么方向呢? 我的意见是,不 ...

  8. JAVA自学之路 七:路线图明细

    [原创 - 尚学堂科技 - 马士兵老师] JAVA自学之路 七:路线图明细 [转载请注明出处:http://www.bjsxt.com/zixue/zixuezhilu_7.html] 下面给出第二节 ...

  9. 【经验】马士兵Java自学之路——(精华版)

    目录  JAVA自学之路 一: 学会选择 2  JAVA自学之路 二: JAVA自学路线图 3  JAVA自学之路 三: 要动手 3  JAVA自学之路 四: 要事为先 4  JAVA自学之路 五: ...

  10. 马士兵老师的Java自学之路(转长篇!!)

    作者:马士兵老师 JAVA自学之路 一:学会选择为了就业,不少同学参加各种各样的培训. 决心做软件的,大多数人选的是java,或是.net,也有一些选择了手机.嵌入式.游戏.3G.测试等.那么究竟应该 ...

最新文章

  1. 1079 Total Sales of Supply Chain
  2. 过滤掉空格( /r/n) 和html标签
  3. php自动加载指定类,PHP自动加载类-Java架构师必看
  4. api 请求 fail_谈一谈定位api的使用
  5. 第七节:利用CancellationTokenSource实现任务取消和利用CancellationToken类检测取消异常。
  6. 基于python人脸识别考勤系统(语音播报)
  7. 再谈如何以最简单的方法将泛型为String类型的集合或String类型的数组转化为逗号间隔字符串形式
  8. 【五线谱】重音记号、渐强记号、渐弱记号
  9. 人人商城开启整点秒杀功能
  10. 人生的,爱情,友情,亲情之间的关系!
  11. html实现鼠标悬停效果实现
  12. 正在完成android更新三星,手机实时动态:这些都是三星手机正在获取Android 10
  13. 笔记:A Novel Representation of Parts for Accurate 3D Object Detection and Tracking in Monocular Images
  14. Unity 之 ShaderGraph Channel节点解析汇总
  15. mysql整数转为2位小数_SQL整数转换成小数
  16. linux nas解决方案_Linux操作系统在NAS中的典型应用
  17. 【推荐】智慧油田数字化油井智能入侵监测井口控制系统解决方案合集(共83份,884M)
  18. python如何安装第三方模块
  19. A. Frog Jumping
  20. java 通过出生日期算年龄

热门文章

  1. Unity3D AssetBundle相关
  2. HTML5离线缓存(Application Cache)
  3. 文章下载:关于窗宽窗位调节非常有用的论文《DICOM 医学图像窗口变换的加速算法》...
  4. 取一行多列数据中的最大值
  5. ubuntu16.04 创建配置并使用虚拟环境
  6. 用Markdown记笔记后转换成html
  7. 浅谈SpringMVC源码的DispatcherServlet组件执行流程
  8. 面向过程编程和面向对象编程的区别
  9. centos服务器之间copy文件夹命令,Centos下如何拷贝整个目录命令?Centos下拷贝目录命令的方法...
  10. python最小特征值_阿里巴巴举荐,Python视频,免费分享,用python求解特征向量和拉普拉斯矩阵...