如何系统地自学Java?


相信这个问题许多同学都很疑惑 。那源妹儿就用源码的课程来告诉大家:学习Java的路线是怎么样的:
第一阶段:Java编程入门(JavaSE)
【如何系统地自学Java?】Java基础语法、面向对象编程思想 。
第二阶段:JavaSE进阶
Java常用API、多线程并发编程、数据结构/集合框架、IO/反射/注解 。
第三阶段:主流数据库管理系统
MySQL/Oracle、JDBC 。
第四阶段:JavaWeb开发技术详解
JavaWeb前端、JavaWeb基础、JavaWeb基高级 。
第五阶段:大型项目实战
内容管理系统(CMS)-团队协作、全栈springboot+ssm项目实战(多项目选择)、前后端分离+微服务项目实战(多项目选择)、大数据实践、移动端微信程序项目 。
第六阶段:前沿高薪技术
短信验证码集成;第三方支付(微信或支付宝)第三方登陆技术;阿里OSS存储.....
第七阶段:就业与服务
就业指导、面试直通车、售后服务 。
全程多个项目演练 。让你迅速知晓自己的掌握情况 。并且毕业后可以直接将项目经验写在简历里 。
还会根据IT市场更新课程内容 。让每一位同学能学到与就业市场1:1匹配的IT技术 。
其他观点:
一、什么是java
Java是一种可以撰写跨平台应用程序的面向对象的程序设计语言 。
Java 技术具有卓越的通用性、高效性、平台移植性和安全性 。广泛应用于PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网 。同时拥有全球最大的开发者专业社群 。JAVA战狼班它最初被命名为Oak 。目标设定在家用电器等小型系统的编程语言 。来解决诸如电视机、电话、闹钟、烤面包机等家用电器的控制和通讯问题 。由于这些智能化家电的市场需求没有预期的高 。Sun放弃了该项计划 。就在Oak几近失败之时 。随着互联网的发展 。Sun看到了Oak在计算机网络上的广阔应用前景 。于是改造了Oak 。以“Java”的名称正式发布 。
Java 编程语言的风格十分接近C、C++语言 。Java是一个纯的面向对象的程序设计语言 。它继承了 C++ 语言面向对象技术的核心 。Java舍弃了C ++语言中容易引起错误的指针(以引用取代)、运算符重载(operator overloading)、多重继承(以接口取代)等特性 。增加了垃圾回收器功能用于回收不再被引用的对象所占据的内存空间 。使得程序员不用再为内存管理而担忧 。在 Java SE 1.5 版本中 。Java 又引入了泛型编程(Generic Programming)、类型安全的枚举、不定长参数和自动装/拆箱等语言特性 。
Java 不同于一般的编译执行计算机语言和解释执行计算机语言 。它首先将源代码编译成二进制字节码(bytecode) 。然后依赖各种不同平台上的虚拟机来解释执行字节码 。从而实现了“一次编译、到处执行”的跨平台特性 。不过 。每次的编译执行需要消耗一定的时间 。这同时也在一定程度上降低了 Java 程序的运行效率 。但在 J2SE1.4.2 发布后 。Java 的执行速度有了大幅提升 。
二、如何自学java
新手我建议的是:视频+书籍+项目+实战 。视频为主 。书籍为辅 。双管齐下 。针对自己的特点进行学习 。

如何系统地自学Java?

文章插图
写博客 。看博客
其他观点:
一、JavaSE基础篇
JavaSE就是一种标准版 。是Java语言的基础部分 。Java衍生出来的各种框架(如Spring系列)各种产品都是基于JavaSE标准 。JavaSE是Java向上发展的基础 。Java任何高级产品的底层基础都是JavaSE 。通俗来讲这是所有孩子的”爹“ 。JavaSE如果学不好 。理解不透彻 。后面学习框架时就有如天书一般 。所以JavaSE这部分的重要性是不言而喻的 。希望各位初学者铭记 。
主要包含内容:数据类型、基础语法、运算符、流程控制、数组、面向对象、常用类、异常处理、集合、IO流、多线程、反射、注解、解析、网络编程 。
二、数据库篇
数据库是学习Java语言必学的一项内容 。常见的数据库就是MySQL和Oracle这两种 。作为初学者一般都是学习MySQL为主 。一般情况下中小型企业都会选择MySQL数据库 。比较大型的互联网公司会选择用Oracle 。而学习Oracle相对于MySQL也要复杂一些 。建议是主要学习MySQL数据库 。Oracle作为了解即可 。学习数据库较为简单 。基本的操作就是增删改查 。
三、Web开发
Web前端内容:HTML/CSS/JavaScript/(前端页面)
注意:Java后端开发可以不用过多关注HTML页面及CSS的处理 。但是最起码要会用简单的HTML 。JavaScript是必需要会的 。因为Javaweb后端程序员毕竟要接触使用AJAX方式处理数据及显示 。当然如果只关注服务器端实现而不考虑任何用户界面 。则HTML、CSS、JavaScript都不用关注 。但是完全脱离前端的开发现在虽然也不少 。但是绝对不关心前端是不可能 。尤其是JavaScript 。但是前端却可以完全不关心服务器后台的任何实现 。

推荐阅读