第一阶段: 建立编程思想

Java 概述

如何快速学习Java技术Java历史Java特点SublimeJava运行机制JDK转义字符Java开发规范Java API

变量

数据类型变量基本使用数据类型转换

运算符

运算符介绍算术运算符关系运算符逻辑运算符赋值运算符三元运算符优先级二进制位运算符

控制结构

顺序分支(if else switch)循环(for , while , do while)breakcontinuereturn

数组排序和查找

数组排序查找

面向对象编程(基础)

类与对象成员方法成员方法传参机制overload可变参数作用域构造器this

面向对象编程(中级)

访问修饰符封装继承多态SuperoverwriteObject类详解断点调试

第二阶段: 提升编程能力

面向对象编程(高级)

类变量和类方法理解main方法语法代码块单例设计模式final 关键字抽象类接口内部类

枚举和注解

自定义类实现枚举enum关键字实现枚举JDK内置的基本注解类型元注解:对注解进行注解

Exception

异常的概念异常体系图常见的异常异常处理自定义异常throw和throws的对比

常用类

包装类StringStringBufferStringBuilderMathDateCalendarLocalDate…SystemArraysBiglntegerBigDecimal

集合

  • 集合框架体系
  • Collection
    • ListArrayListLinkedListVector
    • SetHashSetLinkedHashSetTreeSet
  • MapHashMapHashtableLinkedHashMapTreeMapProperties
  • Collections

泛型

  • 泛型语法
  • 自定义泛型泛型类泛型接口泛型方法
  • 泛型继承和通配符

线程基础

线程介绍线程使用线程方法线程生命周期Synchronized互斥锁死锁

IO流

  • 文件概念常用操作
  • IO流原理及流的分类
  • 节点流和处理流
  • 输入流
    • InputStreamFilelnputStreamBufferedInputStreamObjectlnputStream
    • ReaderFileReaderBufferedReaderInputStreamReader
  • 输出流
    • OutputStreamFileOutputStreamBufferedOutputStreamObjectOutputStream
    • WriterFileWriterBufferedWriterOutputStreamWriter
  • Properties类

Java8新特性

Lambda函数式接口接口静态方法接口默认方法方法引用构造器引用stream API并行流串行流Optional新时间日期 API

Java11 新特性

  • 代码层面新特性JShell类型推断集合增强APIStkeam 加强新增字符串处理方法Optional 加强InputStream增强API标准Java异步HTTP客户端
  • 其他新特性简化的编译运行支持Unicode 10Epsilon垃圾收集器ZGCJFR支持Linux容器支持G1上的并行完全垃圾收集增加加密算法,代替RC4最新HTTPS安全协议TLS 1.3移除和废弃的内容

第三阶段: 分析需求代码实现

网络编程

网络基础InetAddressSocketTCP编程字节流字符流UDP编程

反射

反射机制Class类类的加载ClassFieldMethodConstructor访问属性访问方法

Mysql基础

  • MySQL安装和配置
  • 数据库创建查看删除数据库备份恢复数据库
  • 创建删除修改查询
  • Mysql数据类型
  • CRUDInsertUpdateDeleteSelect
  • 函数统计函数时间日期字符串函数数学函数流程控制
  • 内连接
  • 外连接
  • 约束not nullprimary keyuniqueforeign keycheck自增长
  • 索引主键索引唯一索引(UNIQUE)普通索引(INDEX)全文索引
  • 事务

JDBC和连接池

  • JDBC概述
  • JDBC快速入门
  • JDBC APIPreparedStatementDriverManagerStatementResultSet
  • JDBCUtils
  • 事务
  • 批处理
  • 连接池DataSourceDBCPC3P0ProxoolBoneCPDruid
  • Apache-DBUtils
  • DAO增删改查-BasicDao

正则表达式

  • 快速入门
  • 正则表达式基本语法
  • 三个常用类PatternMatcherPatternSyntaxException
  • 分组捕获反向引用
  • 元字符限定符选择匹配符分组组合和反向引用符特殊字符字符匹配符定位符

学习资源

  • 视频
    • 韩顺平 零基础 30 天学会 Javahttps://www.bilibili.com/video/BV1fh411y7R8
    • 宋红康 全网最全Java零基础入门教程https://www.bilibili.com/video/BV1Kb411W75N
    • JDK8新特性详解https://www.bilibili.com/video/BV1k64y1R7sA
  • 文档
    • 菜鸟教程 Javahttps://www.runoob.com/java/java-tutorial.html
    • 菜鸟教程 Java 8https://www.runoob.com/java/java8-new-features.html
    • 廖雪峰 Java 教程https://www.liaoxuefeng.com/wiki/1252599548343744
    • IDEA 中文教程https://github.com/judasn/IntelliJ-IDEA-Tutorial
    • IDEA Mac 快捷键指南https://www.jianshu.com/p/454c71172c46
    • IDEA Win 常用快捷键https://www.jianshu.com/p/5de7cca0fefc
  • 书籍
    • Head First Java
    • Java 8 实战
    • Java 从入门到精通
  • 工具
    • 在线编写运行https://c.runoob.com/compile/10/
  • 游戏
    • Codegymhttps://codegym.cc/zh
  • 练手项目
    • Java 实现简单计算器https://www.lanqiao.cn/courses/185
    • Eclipse 实现 Java 编辑器https://www.lanqiao.cn/courses/287
    • 一本糊涂账https://how2j.cn/module/104.html
    • Java 五子棋https://blog.csdn.net/cnlht/article/details/8176130
    • Java 中国象棋https://blog.csdn.net/cnlht/article/details/8205733
    • JAVA GUI 图书馆管理系统https://github.com/uboger/LibraryManager
    • JAVA 坦克大战小游戏https://github.com/wangzhengyi/TankWar
    • Swing 编写的俄罗斯方块https://github.com/HelloClyde/Tetris-Swing
    • 小小记账本https://github.com/xenv/SmallAccount