我们如何学好Java?

154 阅读5分钟

怎么才能学好java?我们要明白它的体系结构,明白了它的体系结构才能更加理解和加以运用,下面博主就来和大家来聊聊怎么样才能更好的学习Java

  • 1、入门基础
    • JAVA语言基础、循环、数组;了解类和对象;
    • OOP封装、继承、多态;
    • java.util.*包下的常用类讲解;
    • JDK语言包的常用函数;
    • 数据库基础及JDBC;
    • IO流操作,[多线程]及Socket。
  • 2、前端基础
    • HTML基本标签;
    • CSS样式表;
    • JAVASCRIPT;
    • Ajax;
    • jQuery;
    • 状态管理Session和Cookie;
    • 动态网页技术;
    • JSP数据交互;
    • JSTL和EL表达式;
    • Servlet、Filter、Listener;
    • 分页和文件上传。
  • 3、 主流技术应用
    • Spring应用
    • Hibernate应用
    • Struts2应用
    • Redis应用
  • 4丶模拟实际项目开发
    • SpringMVC的应用
    • Redis+Mysql的查询优化设计
    • Nginx的使用
    • Mysql集群方案

通过第一阶段的学习掌握Java语法和常用类,数据库入门技术相关知识。让自己对于存储,IO,这些有个大概的了解。这时候,千万不要深入了解多线程和socket,谨记谨记。

通过第二阶段了解前端相关的技术,如果你喜欢前端各种酷炫的效果,那么就深入学习JS、CSS。不大感兴趣的话,就浅尝辄止,并重点学习Servlet、Filter、Listener。重点学习,重点学习,重点学习。 重要的话说三遍!

学习路线以及方法推荐

对于学习路线的话,我说一条我比较推荐的,我相信照着这条学习路线来你的学习效率会非常高。下面提到的书籍以及相关学习视频都答主已经整理好,文末有免费获取方式。很多朋友这几天领取了我整理的学习资源之后都私信感谢我,我个人还是挺高兴的,说句心里话,这些资源都是自己花了很长时间整理的。

  1. 掌握 Java 基础知识(可以看《Java 核心技术卷1》或者《Head First Java》这两本书在我看来都是入门Java的很不错的书籍),当然你也可以边看视频边看书学习(推荐黑马或者尚硅谷的视频)。记得多总结!打好基础!把自己重要的东西都记录下来。
  2. 掌握多线程的简单实用(推荐《Java并发编程之美》或者《实战Java高并发程序设计》)。
  3. (可选) 如果你想进入大厂的话,我推荐你在学习完Java基础或者多线程之后,就开始每天抽出一点时间来学习算法和数据结构。为了提高自己的编程能力,你也可以坚持刷Leetcode。
  4. 学习前端基础(HTML、CSS、JavaScript),当然BootStrap、VUE等等前端框架你也可以了解一下。
  5. 学习MySQL 的基本使用,基本的增删改查,SQL命令,索引、存储过程这些都学一下吧!
  6. 学习Struts2(可不用学)、Spring、SpringMVC、Hibernate、Mybatis 等框架的使用, (可选)熟悉 Spring 原理(大厂面试必备),然后很有必要学习一下SpringBoot。我也遇到很多公司对于应届生直接上手SpringBoot,不过我还是推荐你把Spring、SpringMVC好好学一下。
  7. 学习Linux的基本使用(常见命令、基本概念)
  8. 学习Dubbo、Zookeeper、常见的消息队列(比如ActiveMq、RabbitMQ)的使用.(这些东西可以通过黑马最后一个分布式项目来学,边看视频,边自己做,查阅网上博客,效果更好)
  9. (可选),如果想去大厂,JVM 的一些知识也是必学的(Java内存区域、虚拟机垃圾算法、虚拟垃圾收集器、JVM内存管理)推荐《深入理解Java虚拟机:JVM高级特性与最佳实践(最新第二版》,如果嫌看书麻烦的话,你也可以看我整理的文档,在下面有链接。

我上面主要概括一下每一步要学习的内容,对学习规划有一个建议。知道要学什么之后,如何去学呢?我觉得学习每个知识点可以考虑这样去入手:官网(大概率是英文,不推荐初学者看)书籍(知识更加系统完全,推荐)视频(比较容易理解,推荐,特别是初学的时候)网上博客(解决某一知识点的问题的时候可以看看)

这里给各位一个建议,看视频的过程中最好跟着一起练,要做笔记!!!最好可以边看视频边找一本书籍看,看视频没弄懂的知识点一定要尽快解决,如何解决?首先百度/Google,通过搜索引擎解决不了的话就找身边的朋友或者认识的一些人。

通过第三阶段了解目前Java领域使用率很高的三大框架,了解他们的大概功能,并加以使用。通过使用SSH开发一个简易CRM之类的项目来加强了解,理清楚框架的大致原理。并了解Redis相关的指令及数据结构,应用到CRM里。

通过第四个阶段了解更简单易用的SpringMVC,应用和存储集群相关的概念及实现方案。让自己具备一个设计高可用,可扩展的项目框架视野。这样对于后面继续专研SpringCloud / Dubbo、zookeeper这些RPC相关的框架有很大的好处。

最后,你想自学的话,我提到的这些东西都能搜到对应的资料,无非多踩点坑罢了。但是,看文档or项目永远进步不了。一定要上手敲,想再多也不如动手。有机会联系一名优秀学长,有个走在前面的人给你指路肯定比你自己走要快得多。