初学者该如何学习Java(附带Java学习路线)
有人说,Java 的书籍一看,一堆知识点,最开始学的时候就会很迷茫,根本不知道方向在哪里,抱着一本书一页一页的翻,学完了,叫你写个程序,做个项目,啥都不知道,和没学一样。
“学了四年的计算机课程,我们班大多数同学都不知道该干什么,能干什么,感觉好像什么都学了,但是又什么都干不来!”
“面试的时候,很多单位问做过什么项目,能干什么,我们都回答不上来,就连很多问题,我们都不知道。”
这些都是很多计算机专业毕业后学生们的感想,但是这几乎成为了一种大学 IT 行业的毛病,也是很多学编程语言以后的人的想法。
就拿 Java 这个来说,很多人拿着书在学习的时候,是不是都一页一页的顺着翻书看的?遇到问题都卡住了,要不然就去问老师,麻烦点就问其他人,但又感觉不好意思,再不然就失去信心,干脆放弃了。有些时候,看书觉得懂了,一上机操作啥都不知道了……
其实这些都是误区!学编程,一定要动手,遇到 bug 了,就自己去查,如果连这点都不想做,那我只能劝你别学了。程序员,有些时候产生的 bug 搜遍全网都找不到解决方法,但是还是要自己去解决;如果就连一个随便在网上一搜索就出来的了 bug 都不愿意去查,那还何谈学习编程?
还有就是你要知道,你是新手,在学习过程中肯定会遇到非常多的麻烦,但是,所有人都是从新手走过来的。你遇到的问题,别人多多少少都遇到过,所以,除了学会查找资料以外,大胆的提问,有些时候也会有一些意想不到的收获。
还有比如,你的程序出现了一个 bug,你在网上找到了解决方法,但是别人用到了一个你没学过的知识点,你该怎么办?对,书不要再一页一页的翻了!学编程,一页一页慢慢的学,没用!哪里想学,哪里不会,看目录,直接去读。
所以说,学编程,其实就是在提升自己的自学能力,动手能力,逻辑能力,还有解决问题的能力。
“没有学不好的语言,只有不努力的人!”我其实一直不太喜欢这句话。学习,尤其是编程语言,是有技巧的。如果什么都去学,而不是精学工作和面试中的知识点,那不仅会造成学习效率相当底下,而且还会迷失在知识的海洋中。结果是,大家投入了大量的时间,也学到了不少的知识点,但是无法把学到的知识点整理成升职加薪的 Java 知识体系,说白了,也就是白学了。
笔者是一路自学 Java 过来的,走了不少的弯路,也有一定的开发经验,做过一些项目,知道目前企业在 Java 方面对人员的普片需求,所以才想给大家指出一条学习 Java 的路线,不想让大家再去走弯路。
掌握编程基础比如变量,基本数据类型,进制,转义字符,运算符,分支语句和循环语句等。方法与数组,还有彻底掌握面向对象的思想。如果能掌握这些,那么恭喜你,你已经入门 Java 语言了。
要掌握分布式基础知识点:Linux 常见命令,Jdktomcat 配置,maven 私服,阿里云配置 redis 和 mysql 等。
还要掌握 JVM 高级特性,JVM 性能监控和调优等等。
由于篇幅和教程相对应的人员的问题,JavaEE 高级相关知识点,笔者也就不在此教程中讲述了。
笔者建议,如果没有任何编程基础的读者,先学习C语言的语法,Java 的语法和C语言的大同小异;若是有一定编程基础了,那么就可以开始学习 Java 或者直接进入面向对象思想的教程部分了。
最后,祝大家学习愉快!
“学了四年的计算机课程,我们班大多数同学都不知道该干什么,能干什么,感觉好像什么都学了,但是又什么都干不来!”
“面试的时候,很多单位问做过什么项目,能干什么,我们都回答不上来,就连很多问题,我们都不知道。”
这些都是很多计算机专业毕业后学生们的感想,但是这几乎成为了一种大学 IT 行业的毛病,也是很多学编程语言以后的人的想法。
就拿 Java 这个来说,很多人拿着书在学习的时候,是不是都一页一页的顺着翻书看的?遇到问题都卡住了,要不然就去问老师,麻烦点就问其他人,但又感觉不好意思,再不然就失去信心,干脆放弃了。有些时候,看书觉得懂了,一上机操作啥都不知道了……
其实这些都是误区!学编程,一定要动手,遇到 bug 了,就自己去查,如果连这点都不想做,那我只能劝你别学了。程序员,有些时候产生的 bug 搜遍全网都找不到解决方法,但是还是要自己去解决;如果就连一个随便在网上一搜索就出来的了 bug 都不愿意去查,那还何谈学习编程?
还有就是你要知道,你是新手,在学习过程中肯定会遇到非常多的麻烦,但是,所有人都是从新手走过来的。你遇到的问题,别人多多少少都遇到过,所以,除了学会查找资料以外,大胆的提问,有些时候也会有一些意想不到的收获。
还有比如,你的程序出现了一个 bug,你在网上找到了解决方法,但是别人用到了一个你没学过的知识点,你该怎么办?对,书不要再一页一页的翻了!学编程,一页一页慢慢的学,没用!哪里想学,哪里不会,看目录,直接去读。
所以说,学编程,其实就是在提升自己的自学能力,动手能力,逻辑能力,还有解决问题的能力。
“没有学不好的语言,只有不努力的人!”我其实一直不太喜欢这句话。学习,尤其是编程语言,是有技巧的。如果什么都去学,而不是精学工作和面试中的知识点,那不仅会造成学习效率相当底下,而且还会迷失在知识的海洋中。结果是,大家投入了大量的时间,也学到了不少的知识点,但是无法把学到的知识点整理成升职加薪的 Java 知识体系,说白了,也就是白学了。
笔者是一路自学 Java 过来的,走了不少的弯路,也有一定的开发经验,做过一些项目,知道目前企业在 Java 方面对人员的普片需求,所以才想给大家指出一条学习 Java 的路线,不想让大家再去走弯路。
Java学习路线
对于学习 Java EE 的读者,可以分为初级、中级和高级水平。Java EE 初级
掌握计算机入门,包括DOS 命令,什么是程序,如何配置 JAVA 开发环境,JAVA 编程的过程是怎样的,JAVA 有什么特点,程序是如何运行的。掌握编程基础比如变量,基本数据类型,进制,转义字符,运算符,分支语句和循环语句等。方法与数组,还有彻底掌握面向对象的思想。如果能掌握这些,那么恭喜你,你已经入门 Java 语言了。
Java EE 中级
Java EE 的中级水平是要求掌握 Eclipse 用法与异常处理技术,Debug 调试技术,Java 常用类库,文件与 IO,集合框架,多线程并发技术,网络编程,反射和泛型特点,正则表达式,枚举和注解,XML 和 JSON,GUI 事件处理,Web 前端开发基础和框架,Servlet 和 JSP 在 Web 后端的应用,MVC 和分层架构,以及项目开发流程以及 CASE 工具的使用。Java EE 高级
Java EE 高级便是要求掌握 Mybatis 框架,Spring 框架,使用 Hibernate 实现持久层 RESTful 架构和移动端接口,设计第三方接口和在线支付功能,MyBatis 的应用和 SSM 整合。要掌握分布式基础知识点:Linux 常见命令,Jdktomcat 配置,maven 私服,阿里云配置 redis 和 mysql 等。
还要掌握 JVM 高级特性,JVM 性能监控和调优等等。
由于篇幅和教程相对应的人员的问题,JavaEE 高级相关知识点,笔者也就不在此教程中讲述了。
笔者建议,如果没有任何编程基础的读者,先学习C语言的语法,Java 的语法和C语言的大同小异;若是有一定编程基础了,那么就可以开始学习 Java 或者直接进入面向对象思想的教程部分了。
最后,祝大家学习愉快!
所有教程
- C语言入门
- C语言编译器
- C语言项目案例
- 数据结构
- C++
- STL
- C++11
- socket
- GCC
- GDB
- Makefile
- OpenCV
- Qt教程
- Unity 3D
- UE4
- 游戏引擎
- Python
- Python并发编程
- TensorFlow
- Django
- NumPy
- Linux
- Shell
- Java教程
- 设计模式
- Java Swing
- Servlet
- JSP教程
- Struts2
- Maven
- Spring
- Spring MVC
- Spring Boot
- Spring Cloud
- Hibernate
- Mybatis
- MySQL教程
- MySQL函数
- NoSQL
- Redis
- MongoDB
- HBase
- Go语言
- C#
- MATLAB
- JavaScript
- Bootstrap
- HTML
- CSS教程
- PHP
- 汇编语言
- TCP/IP
- vi命令
- Android教程
- 区块链
- Docker
- 大数据
- 云计算