如何学好Java

培养意识

  1. 制定好一下系统的学习规划,每天定量,学完什么知识点就掌握,能自己应用,而不是能看懂,写不出来东西。因为现在有很多人都是这样,表面上我是学会了,但是一上手去写但是怎么也写不出来。
  2. 不要自己一个人闷头学,找一套质量不错的视频教程跟着去学习,听课的过程当中一定要把笔记记录下来。笔记当中只记忆重点的结论。把不懂的地方记下来,有时间就去解决。要学会在学习中记好笔记,一定要记得去复习。
  3. 机会都是留给有准备的人,坚持每天学习也考验你的耐性和毅力,中途如果没有什么事情千万不能松懈,一天都不可以,保持一周6天的学习状态,周日可以休息一下。所以说,如果自己的自制力不够一定要考虑清楚,如果自己的自制力不够,那你在这条路一定走不远。
  4. 学这个就是为了做项目,学完了做不了项目的,趁早停止,技术的成长都是在项目中提升的,所以一定多接触项目。不要怕遇到问题,因为只有遇到问题解决问题,经验才会积累下来。一定要前后去做项目,如果你不上手去做。只是看项目,只是在脑中思想,这样肯定是不行的。一定要记着,一定要亲自上手去做项目。
  5. 掌握得当的学习方法,初期自己别盲目,多跟别人去请教一下学习方法,。一定要找一套适合自己的学习方法以及学习路线。
  6. 一定要锻炼自己的编程思想。在学习的过程中千万不要去抄代码,因为没用。或者说作用很小,如此下去可能会导致你对学习的厌烦

学习计划

  1. 在课堂上学习的知识点课下尝试编写属于自己的程序,想尽一切方法去推翻这个结论,如果你无法推翻,那么只能选择接受这个结论,采用这种方式测试之后,发现结论记住了。并且同时也锻炼了编程的思路
  2. 买一些技术性的Java书籍去阅读了,初学初期是不推荐看书
  3. 多看一些博客以及技术的文章,想方法自己去尝试写文章,写的文章一定要发表,这样一些大佬也能看到或许也有大佬去指正你写的文章,这样你能学到更多的知识同时也能加深自己的记忆。

学习流程

Java核心库

JavaSE的内容包括:Java开发介绍、Java数组、Java面向对象、常用基础类、集合、IO流、多线程、异常、反射。

第一部分:Java开发介绍

  1. DOS常用命令
  2. JVM、JRE、JDK之间的关系
  3. Java开发环境的搭建:安装JDK,配置环境变量
  4. Java入门程序(Java的开发流程)
  5. Java的注释,标识符、标识符的命名规范
  6. Java基本数据类型
  7. 变量和常量的定义及初始化
  8. Java的运算符
  9. 运算符的优先级
  10. Java分支语句之if…else
  11. 循环的嵌套
  12. 方法的定义
  13. 方法的形参和实参
  14. 方法的递归调用

第二部分:Java数组

  1. Java 数组的定义
  2. Java 数组的声明
  3. 数组的优势与局限
  4. 数组的遍历访问(普通循环,增强for循环)
  5. 数组元素的顺序查找
  6. 数组元素的冒泡法排序
  7. Arrays工具类的使用
  8. 二维数组

第三部分:Java面向对象

  1. 面向对象设计思想
  2. 面向对象的分析与设计
  3. Java与面向对象
  4. 类中成员变量的定义与意义
  5. 构造方法的定义和调用
  6. 面向对象的封装特性
  7. 局部变量和成员变量的作用域问题
  8. 静态属性、静态方法、静态代码块
  9. 面向对象的继承特性
  10. 继承中构造方法的细节
  11. 面向对象的多态特性
  12. 抽象方法与抽象类
  13. 接口

第四部分:异常

  1. 异常的概念

  2. 异常的分类

  3. 异常的理解

  4. 常见异常介绍

  5. 运行时异常

  6. 编译时异常

  7. 运行和编译异常区别

  8. 异常的处理方式之捕获异常

  9. 异常的处理方式之抛出异常

  10. 异常的处理方式之断点调试

  11. 断点调试之引导运行步骤

  12. 自定义异常

  13. 异常关键字处理

  14. 关键字执行流程

  15. 异常总结

第五部分:集合

  1. 集合的概念和作用

  2. 集合和数组的区别

  3. 集合框架体系介绍

  4. 集合框架之Collection接口

  5. ArrayList和LinkedList的方法使用

  6. ArrayList和LinkedList各自的工作原理分析原理分析

  7. 使用多种方式遍历集合

  8. HashSet和LinkedHashSet各自的工作原理分析

  9. 集合框架之Map接口

  10. 泛型的使用

  11. Collections工具类的使用

第六部分:IO流

  1. File类的作用

  2. File类中常用方法的使用介绍

  3. 使用File类操作文件和文件夹

  4. 相对路径和绝对路径的介绍

  5. IO流的概念和工作原理

  6. IO流的分类

  7. 文件流的使用

  8. 转换流的使用

  9. 缓冲流的使用

  10. 对象流的使用

  11. 内存流的使用

  12. 使用不同的流实现文件内容的拷贝

第七部分:多线程

  1. 进程和线程的介绍

  2. 进程和线程之间的区别与联系

  3. 线程实现方式之继承自Thread类

  4. 线程实现方式之实现Runnable接口

  5. 线程实现方式之线程池

  6. 线程的生命周期

  7. 线程中常用方法的使用

MySQL数据库

  1. 数据库简介

  2. MySQL的安装与使用

  3. MySQL客户端和服务器配置

  4. 用户权限管理

  5. DDL创建数据库和表

  6. 约束与外键

  7. DML实现添加、修改、删除数据

  8. 聚合函数、日期函数等

  9. DQL简单查询

  10. 排序、分组、筛选

  11. 多表查询

  12. 子查询

  13. in和exists关键字

  14. 分页查询

  15. Mysql SQL语句优化介绍

WEB后端(JavaWEB)

第一部分:Servlet

  1. Tomcat与Eclipse的集成开发

  2. 什么是Servlet

  3. Servlet的进化史

  4. Servlet的优化过程

  5. Servlet中应用的多线程概念

  6. Servlet接收客户端请求信息

  7. Servlet响应客户端信息

  8. Servlet的生命周期

  9. 重定向写法

  10. 转发写法

  11. 转发和重定向区别

  12. HttpServletRequest获取中文乱码问题

  13. HttpServletResponse响应中文乱码问题

  14. Servlet路径映射问题

  15. Servlet多路径映射

第二部分:Filter与Listener

  1. Filter&Listener-过滤器的执行原理
  2. Filter&Listener-过滤器创建步骤
  3. Filter&Listener-过滤器对于请求的放行_响应经过过滤器
  4. Filter&Listener-过滤器的生命周期
  5. Filter&Listener-过滤器的url-pattern
  6. Filter&Listener-过滤器链的作用
  7. Filter&Listener-实战_拦截请求
  8. Filter&Listener-监听器

第三部分:JDBC连接池

  1. JDBC概述

  2. JDBC使用步骤

  3. Connection、Statement、ResultSet接口

  4. 使用JDBC 完成数据库DML操作

  5. PreparedStatement对象

  6. 大数据的操作

  7. 批量处理与元数据

  8. 事务处理

  9. 隔离级别

  10. 自定义连接池

  11. DBCP、C3p0连接池

  12. DBUtis工具类

  13. QueryRunner

  14. 自定义结果集处理

  15. 连接池知识总结

第四部分:AJAX

  1. Ajax技术背景

  2. Ajax技术的理解

  3. XMLHttpRequest使用步骤

  4. XMLHttpRequest GET/POST的区别

  5. 同步请求&异步请求

  6. 同步请求&异步请求的区别

  7. Ajax获取不同的返回值类型

  8. Ajax使用原生JavaScript和Jquery的区别

  9. Ajax响应状态处理

  10. JSON语法

  11. Java JSON 解析

  12. Java JSON 生成

  13. Java JSON 第三方工具快速解析

  14. JavaScript JSON转换

  15. Jquery JSON转换

学习到这里为止,表示Java基本/基础的技术已经学完了。但是这些最基层的技术在实际的开发中不会使用的,一般为了开发效率,都会使用大量的提前封装好的框架。

第五:最好能够停留下来,做一个项目。

这个项目最好能将之前所学全部串起来。(对以前的知识点进行巩固。)

这个项目最好是基于:Servlet + Jsp+AJAX+jQuery+MySQL….

管理工具

第一部分:SVN

  1. SVN简介

  2. SVN和Git对比

  3. SVN服务器搭建

  4. SVN创建仓库

  5. SVN创建用户以及分配权限

  6. SVN签出、提交、更新

  7. Eclipse整合svn插件

  8. Idea整合svn插件

  9. 使用SVN更新提交

  10. SVN仓库分析

  11. SVN协同修改&冲突解决

  12. SVN代码整合注意事项

  13. SVN权限管理

  14. SVN数据回滚

  15. TortoiseSVN

第二部分:Git

  1. Git概述

  2. Git环境搭建

  3. Git常用操作

  4. Git分支

  5. Git远程仓库

  6. Git标签

  7. Gitee仓库

  8. IDEA整合Git

第三部分:Maven

  1. Maven环境搭建

  2. Maven构建项目

  3. Maven本地仓库配置

  4. Maven中央仓库配置

  5. Maven基本概念

  6. Maven基本命令介绍

  7. Maven于Eclipse整合

  8. Maven于Idea整合

  9. Maven创建web工程

  10. pom.xml、依赖管理

  11. 坐标、依赖、生命周期等

  12. Eclipse下的Maven使用

  13. Maven中 继承、聚合

  14. Maven构建SSH/SSM应用

  15. 自动部署、持续集成、持续部署

高级框架

第一部分:Spring

  1. 框架原理介绍

  2. 框架环境搭建

  3. 快速入门

  4. 创建Bean的方式及实现原理

  5. Bean种类

  6. Bean生命周期

  7. Bean的作用域

  8. Bean的注值方式

  9. 整合Junit测试

  10. 注解装配Bean

  11. 注解装配Bean

  12. AOP思想、原理解剖

  13. AOP底层JDK动态代理

  14. AOP编程

  15. AspectJ介绍及实现AOP开发

  16. 事务

  17. Web项目集成Spring

第二部分:Spring MVC

  1. Spring MVC 概述

  2. 使用 @RequestMapping映射请求

  3. 请求处理方法签名概述

  4. 处理方法签名详细说明

  5. 使用 HttpMessageConverter

  6. 处理模型数据

  7. 数据绑定流程剖析

  8. 数据格式化

  9. 数据校验

  10. 视图和视图解析器

  11. 处理方法的数据绑定

  12. 视图和视图解析器

  13. 文件上传下载

  14. JSON处理

  15. 拦截器

第三部分:MyBatis

  1. MyBatis数据框架介绍

  2. MyBatis对比Hibernate框架

  3. MyBatis配置、查询数据

  4. MyBatis全局配置文件

  5. MyBatis全局配置文件元素详细介绍

  6. Mapper映射文件

  7. MyBatis两种开发方式

  8. MyBatis中别名配置

  9. MyBatis # 和 $ 拼接参数区别

  10. 关联查询,动态sql

  11. MyBatis缓存机制、整合ehcache

  12. MyBatis二级缓存处理

  13. MyBatis、Spring、SpringMVC整合

  14. 分页插件

  15. MyBatis逆向工程

最后如果你的薪资想达到15K的话,你可能需要还要学习一些分布式相关的一些技术。

能够应付高并发的一些技术,例如:分布式框架Dubbo、SpringCloud、MQ、Nginx、Redis……

我是一个小小的技术小白,我知道想要在技术这个方向走的很远,不仅需要扎实的基础,还有一个长久的目标,这篇文章主要是讲怎么学习Java以及Java相关的基础知识,我也会在以后的文章里面按顺序更新,将看到的学到的以及相关的代码通通写下来,一是为了加强自己的记忆,而是希望有更多的小伙伴一块为了我们自己加入进来学习。

转载:https://www.zhihu.com/question/413277383/answer/1400664720

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值