跳转至

JAVA基础


第一阶段:内容清单(目标:建立编程思想)


一、JAVA概述

  1. 如何快速学习Java技术
  2. Java历史
  3. Java特点
  4. Sublime
  5. Java运行机制
  6. JDK
  7. 转义字符
  8. Java开发规范
  9. Java API
二、变量

  1. 数据类型
  2. 变量基本使用
  3. 数据类型转换
三、运算符

  1. 运算符介绍
  2. 算数运算符
  3. 关系运算符
  4. 逻辑运算符
  5. 赋值运算符
  6. 三元运算符
  7. 优先级
  8. 二进制
  9. 位运算符
四、控制结构

  1. 顺序
  2. 分支(if else switch)
  3. 循环(for,while,do while)
  4. break
  5. continue
  6. return
五、数组、排序和查找

  1. 数组
  2. 排序1
  3. 查找1
六、面向对象(基础)

  1. 类与对象
  2. 成员方法
  3. 成员方法传参机制
  4. overload
  5. 可变参数
  6. 作用域
  7. 构造器
  8. this
七、面向对象(中级)

  1. 访问修饰符
  2. 封装
  3. 继承
  4. 多态
  5. Super
  6. overwrite
  7. Object类详解
  8. 断点调试
八、项目&学以致用(编程之乐)

  1. 零钱通
  2. 房屋出租系统
  3. 迷宫问题
  4. 八皇后问题
  5. 汉诺塔问题


第二阶段:内容清单(目标:提升编程能力)


一、面向对象编程(高级)

  1. 类变量和类方法
  2. 理解main方法语法
  3. 单例设计模式
  4. final关键字
  5. 抽象类
  6. 接口
  7. 内部类
二、枚举和注释

  1. 自定义类实现枚举
  2. enum关键字实现枚举
  3. JDK内置的基本注释类型
  4. 元注解:对注释进行注解
三、Exception

  1. 异常的概念
  2. 异常的体系图
  3. 常见的异常
  4. 异常处理
  5. 自定义异常
  6. thorw和thorws的对比
四、常用类

  1. 包装类
  2. String
  3. StringBuffer
  4. StringBuilder
  5. Math
  6. Date,Calendar,LocalDate...
  7. System
  8. Arrays
  9. Biglnteger BigDecimal
五、集合
  1. 集合框架体系

  2. Collectio

  1. List
  1. ArrrayList

  2. LinkedList

  3. Vector

  1. Set
  1. HashSet
  2. LinkedHashSet
  3. TreeSet
  1. Map
  1. HashMap
  2. Hashtable
  3. LinkedHashMap
  4. TreeMap
  5. Properties
  6. Collections
六、泛型

  1. 泛型语法

  2. 自定义泛型

  1. 泛型类

  2. 泛型接口

  3. 泛型方法

  4. 泛型继承和通配符

七、线程(基础)

  1. 线程介绍

  2. 线程使用

  1. 继承Thread
  2. 实现Runnable
  3. 线程方法
  4. 线程生命周期
  5. Syncronized
  6. 互斥锁
  7. 死锁
八、IO流

  1. 文件
  1. 概念
  2. 常用操作
  1. IO流原理及流的分类

  2. 节点流和处理流

  3. 输入流

  1. InputStream(字节输入流)
  1. FileInputStream
  2. BufferedInputStream
  3. ObjectInputStream
  1. Reader(字符输入流)
  1. FileReader
  2. BufferedReader
  3. InputStreamReader
  1. 输出流
  1. OutputStream(字节输出流)
  1. FileOutputStream
  2. BufferedOutputStream
  3. ObjectOutputStream
  1. Writer
  1. FileWriter
  2. BufftereWriter
  3. OutputStreamWriter
  1. Properties类
九、项目&学以致用 编程之乐

  1. 坦克大战


第三阶段:内容清单(目标:分析需求,代码实现能力)


一、网络编程

  1. 网络基础

  2. InetAddress

  3. Socket

  4. TCP编程

  1. 字节流
  2. 字符流
  1. UDP编程
二、反射(底层框架中使用)

  1. 反射机制

  2. Class类

  3. 类的加载

  4. 反射获取类的结构信息

  1. Class
  2. File
  3. Method
  4. Constructor
  5. 访问属性
  6. 访问方法
三、Mysql基础(后面讲高级篇(优化,集群和项目实践))

  1. MySQL安装和配置

  2. 数据库

  1. 创建
  2. 查看,删除数据库
  3. 备份恢复数据库
  1. 创建
  2. 删除
  3. 修改
  1. Mysql数据类型

  2. CRUD

  1. Inser(添加)

  2. Update(修改)

  3. Delete(删除)

  4. Select(查询)

  1. 单表
  2. 多表
  1. 函数
  1. 统计函数
  2. 时间日期
  3. 字符串函数
  4. 数学函数
  5. 流程控制
  1. 内连接

  2. 外连接

  3. 约束

  1. not null
  2. primary key
  3. unique
  4. foreign key
  5. check
  6. 自增长
  1. 索引

  2. 事务

四、JDBC和连接池

  1. JDBC概述

  2. JDBC快速入门

  3. JDBC API

  1. PreparedStatement
  2. DriverManager
  3. Statement
  4. ResultSet
  1. JDBCUtils

  2. 事务

  3. 批处理

  4. 连接池

  1. DataSource
  2. DBCP
  3. C3P0
  4. Proxool
  5. BoneCP
  6. Druid
  1. Apache---DBUtils

  2. DAO增删改查-BasicDao

五、正则表达式(非常实用)

  1. 快速入门

  2. 正则表达式基本语法

  3. 三个常用类

  1. Pattern
  2. Matcher
  3. PatternSyntaxException
  1. 分组,捕获,反向引用

  2. 元字符

  1. 限定符
  2. 选择匹配符
  3. 分组组合和反向引用符
  4. 特殊字符
  5. 字符匹配符
  6. 定位符
  1. 应用实例
六、Java8 Java11 新特性

  1. Java8新特性
  1. Lambda
  2. 函数式接口
  3. 接口静态方法
  4. 接口默认方法
  5. 方法引用
  6. 构造器引用
  7. stream API
  8. 并流行
  9. 串流行
  10. Optional’
  11. 新时间日期 API
  1. Java11新特性(还有Java9,10)

(为啥不讲其他版本,因为工作中一般用Java8或Java11版本)

(Java11基本上是在Java8上(语法)增强版本)

  1. 代码层面新特性
  1. JShell
  2. 类型推断
  3. 集合增强API
  4. Stream 加强
  5. 新增字符串处理方法
  6. Optional增强
  7. InputStream增强API
  8. 标准Java异步HTTP客户
  1. 其他新特性(了解)
  1. 简化的编译运行
  2. 支持Unicode 10
  3. ZGC
  4. JFR
  5. 支持Linux容器
  6. 支持G1的并行完全垃圾收集
  7. 增加加密算法,代替RC4
  8. 最新HTTPS安全协议TLS 1.3
  9. 移除和废弃的内容
七、项目&学以致用 编程之乐

  1. 骑士周游问题算法-优化
  2. 满汉楼
  3. 多用户通信系统--推送消息 私聊 发文件

  1. 在第二部分的数据结构和算法会学到