第1篇 基 础 篇
第1章 初识Java
视频讲解:20分钟
1.1 Java语言概述
1.1.1 Java语言的历史
1.1.2 Java语言的现状
1.1.3 Java语言的面向对象特性
1.2 JDK的下载和安装
1.2.1 JDK下载
1.2.2 JDK安装
1.2.3 配置JDK
1.2.4 测试开发环境
1.3 第一个Java程序
1.4 本章小结
第2章 熟悉Eclipse开发工具
视频讲解:22分钟
2.1 熟悉Eclipse
2.1.1 Eclipse简介
2.1.2 Eclipse的下载与安装
2.1.3 Eclipse汉化
2.1.4 Eclipse工作台
2.1.5 透视图与视图
2.1.6 菜单栏
2.1.7 工具栏
2.1.8 “包资源管理器”视图
2.1.9 “控制台”视图
2.2 使用Eclipse
2.2.1 创建Java项目
2.2.2 创建Java类文件
2.2.3 使用编辑器编写程序代码
2.2.4 运行Java程序
2.3 程序调试
2.4 本章小结
第3章 Java语言基础
视频讲解:58分钟
3.1 Java程序的基本结构
3.2 标识符和关键字
3.2.1 标识符
3.2.2 关键字
3.3 基本数据类型
3.3.1 整数类型
3.3.2 浮点类型
3.3.3 字符类型
3.3.4 布尔类型
3.4 变量与常量
3.4.1 声明变量
3.4.2 声明常量
3.4.3 变量的有效范围
3.5 运算符
3.5.1 赋值运算符
3.5.2 算术运算符
3.5.3 自增和自减运算符
3.5.4 比较运算符
3.5.5 逻辑运算符
3.5.6 位运算符
3.5.7 三元运算符
3.5.8 运算符优先级
3.5.9 范例1:不用其他变量实现两变量互换
3.5.10 范例2:判断数字的奇偶性
3.6 类型转换
3.6.1 自动类型转换
3.6.2 强制类型转换
3.6.3 范例3:类型转换实战
3.7 代码注释和编码规范
3.7.1 代码注释
3.7.2 编码规范
3.8 经典范例
3.8.1 经典范例1:判断某一年是否是闰年
3.8.2 经典范例2:求球形的体积
3.9 本章小结
3.10 实战练习
第4章 流程控制
视频讲解:31分钟
4.1 复合语句
4.2 条件语句
4.2.1 if条件语句
4.2.2 switch多分支语句
4.2.3 范例1:验证登录信息的合法性
4.2.4 范例2:为新员工分配部门
4.3 循环语句
4.3.1 while循环语句
4.3.2 do…while循环语句
4.3.3 for循环语句
4.3.4 范例3:使用while循环遍历数组
4.3.5 范例4:使用for循环输出九九乘法表
4.4 跳转语句
4.4.1 break语句
4.4.2 continue语句
4.4.3 return语句
4.4.4 范例5:终止循环体
4.4.5 范例6:循环体的过滤器
4.5 经典范例
4.5.1 经典范例1:使用for循环输出空心的菱形
4.5.2 经典范例2:使用for循环输出杨辉三角
4.6 本章小结
4.7 实战练习
第1篇 基 础 篇
第1章 初识Java
视频讲解:20分钟
1.1 Java语言概述
1.1.1 Java语言的历史
1.1.2 Java语言的现状
1.1.3 Java语言的面向对象特性
1.2 JDK的下载和安装
1.2.1 JDK下载
1.2.2 JDK安装
1.2.3 配置JDK
1.2.4 测试开发环境
1.3 第一个Java程序
1.4 本章小结
第2章 熟悉Eclipse开发工具
视频讲解:22分钟
2.1 熟悉Eclipse
2.1.1 Eclipse简介
2.1.2 Eclipse的下载与安装
2.1.3 Eclipse汉化
2.1.4 Eclipse工作台
2.1.5 透视图与视图
2.1.6 菜单栏
2.1.7 工具栏
2.1.8 “包资源管理器”视图
2.1.9 “控制台”视图
2.2 使用Eclipse
2.2.1 创建Java项目
2.2.2 创建Java类文件
2.2.3 使用编辑器编写程序代码
2.2.4 运行Java程序
2.3 程序调试
2.4 本章小结
第3章 Java语言基础
视频讲解:58分钟
3.1 Java程序的基本结构
3.2 标识符和关键字
3.2.1 标识符
3.2.2 关键字
3.3 基本数据类型
3.3.1 整数类型
3.3.2 浮点类型
3.3.3 字符类型
3.3.4 布尔类型
3.4 变量与常量
3.4.1 声明变量
3.4.2 声明常量
3.4.3 变量的有效范围
3.5 运算符
3.5.1 赋值运算符
3.5.2 算术运算符
3.5.3 自增和自减运算符
3.5.4 比较运算符
3.5.5 逻辑运算符
3.5.6 位运算符
3.5.7 三元运算符
3.5.8 运算符优先级
3.5.9 范例1:不用其他变量实现两变量互换
3.5.10 范例2:判断数字的奇偶性
3.6 类型转换
3.6.1 自动类型转换
3.6.2 强制类型转换
3.6.3 范例3:类型转换实战
3.7 代码注释和编码规范
3.7.1 代码注释
3.7.2 编码规范
3.8 经典范例
3.8.1 经典范例1:判断某一年是否是闰年
3.8.2 经典范例2:求球形的体积
3.9 本章小结
3.10 实战练习
第4章 流程控制
视频讲解:31分钟
4.1 复合语句
4.2 条件语句
4.2.1 if条件语句
4.2.2 switch多分支语句
4.2.3 范例1:验证登录信息的合法性
4.2.4 范例2:为新员工分配部门
4.3 循环语句
4.3.1 while循环语句
4.3.2 do…while循环语句
4.3.3 for循环语句
4.3.4 范例3:使用while循环遍历数组
4.3.5 范例4:使用for循环输出九九乘法表
4.4 跳转语句
4.4.1 break语句
4.4.2 continue语句
4.4.3 return语句
4.4.4 范例5:终止循环体
4.4.5 范例6:循环体的过滤器
4.5 经典范例
4.5.1 经典范例1:使用for循环输出空心的菱形
4.5.2 经典范例2:使用for循环输出杨辉三角
4.6 本章小结
4.7 实战练习
第5章 数组
视频讲解:31分钟
5.1 数组概述
5.2 一维数组
5.2.1 创建一维数组
5.2.2 初始化一维数组
5.2.3 范例1:求一维数组各元素的和
5.2.4 范例2:获取一维数组的最小值
5.3 多维数组
5.3.1 二维数组
5.3.2 三维数组
5.3.3 范例3:对矩阵进行转置运算
5.3.4 范例4:求方阵的迹
5.4 数组的基本操作
5.4.1 遍历数组
5.4.2 填充替换数组元素
5.4.3 对数组进行排序
5.4.4 复制数组
5.4.5 范例5:对比一维、二维数组所占内存
5.4.6 范例6:使用直接插入排序法排序
5.5 经典范例
5.5.1 经典范例1:使用冒泡排序法排序
5.5.2 经典范例2:输出九宫格
5.6 本章小结
5.7 实战练习
第6章 字符串
视频讲解:48分钟
6.1 创建字符串
6.2 字符串操作
6.2.1 字符串连接
6.2.2 获取字符串信息
6.2.3 去除字符串中的空格
6.2.4 字符串替换
6.2.5 判断字符串
6.2.6 字母大小写转换
6.2.7 字符串分割
6.2.8 范例1:根据指定分割符把字符串分行
6.2.9 范例2:判断字符串是否是数字格式
6.3 格式化字符串
6.3.1 格式化方法
6.3.2 日期格式化
6.3.3 时间格式化
6.3.4 日期时间组合格式化
6.3.5 常规类型格式化
6.3.6 范例3:将金额格式化成大写
6.3.7 范例4:将数字格式化成货币格式
6.4 正则表达式
6.4.1 判断是否符合正则表达式的方法
6.4.2 正则表达式的元字符
6.4.3 正则表达式的限定符
6.4.4 方括号中元字符的含义
6.4.5 范例5:验证IP地址的合法性
6.4.6 范例6:计算文章中汉字的个数
6.5 字符串生成器
6.5.1 StringBuilder类
6.5.2 StringBuilder类的常用方法
6.5.3 范例7:将汉字和字母转换成Unicode码
6.5.4 范例8:去掉字符串中重复的字符
6.6 经典范例
6.6.1 经典范例1:实现字符串加密
6.6.2 经典范例2:验证字符串是否回文
6.7 本章小结
6.8 实战练习
第7章 类和对象
视频讲解:46分钟
7.1 面向对象概述
7.1.1 什么是对象
7.1.2 什么是类
7.1.3 面向对象的特点
7.2 类
7.2.1 类的构造方法
7.2.2 类的主方法
7.2.3 成员变量
7.2.4 成员方法
7.2.5 局部变量
7.2.6 局部变量的有效范围
7.2.7 静态变量、常量和方法
7.2.8 权限修饰符
7.2.9 this关键字
7.2.10 范例1:自定义图书类
7.2.11 范例2:温度单位转换工具
7.3 对象
7.3.1 对象的创建
7.3.2 访问对象的属性和行为
7.3.3 对象的引用
7.3.4 对象的比较
7.3.5 对象的销毁
7.3.6 范例3:统计图书销量
7.3.7 范例4:重新计算对象的哈希码
7.4 经典范例
7.4.1 经典范例1:汉诺塔问题求解
7.4.2 经典范例2:单例模式的应用
7.5 本章小结
7.6 实战练习
第2篇 技 术 篇
第8章 接口、继承与多态
视频讲解:18分钟
8.1 接口的使用
8.1.1 接口的定义
8.1.2 接口的实现
8.1.3 范例1:图片的不同格式保存
8.1.4 范例2:为汽车增加GPS定位功能
8.2 类的继承
8.2.1 继承的实现
8.2.2 继承中的重写
8.2.3 使用super关键字
8.2.4 范例3:经理与员工的差异
8.2.5 范例4:重写父类中的方法
8.3 多态
8.3.1 什么是多态
8.3.2 范例5:计算几何图形的面积
8.3.3 范例6:简单的汽车销售商场
8.4 经典范例
8.4.1 经典范例1:使用Comparable接口自定义排序
8.4.2 经典范例2:动态设置类的私有域
8.5 本章小结
8.6 实战练习
第9章 类的高级特性
视频讲解:34分钟
9.1 抽象类
9.2 内部类
9.2.1 成员内部类
9.2.2 局部内部类
9.2.3 匿名内部类
9.2.4 静态内部类
9.2.5 内部类的继承
9.2.6 范例1:局部内部类设置闹钟
9.2.7 范例2:静态内部类求极值
9.3 Class类与Java反射
9.3.1 访问构造方法
9.3.2 访问成员变量
9.3.3 访问方法
9.3.4 范例3:运用反射查看类的成员
9.3.5 范例4:动态调用类中方法
9.4 经典范例
9.4.1 经典范例1:利用反射重写toString()方法
9.4.2 经典范例2:普通内部类的简单应用
9.5 本章小结
9.6 实战练习
第10章 Java集合类
视频讲解:45分钟
10.1 集合类概述
10.2 集合类接口的常用方法
10.2.1 List接口的常用方法
10.2.2 Set接口的常用方法
10.2.3 Map接口的常用方法
10.2.4 范例1:用List集合传递学生信息
10.2.5 范例2:Map集合二级联动
10.3 集合类接口的实现类
10.3.1 List接口的实现类
10.3.2 Set接口的实现类
10.3.3 Map接口的实现类
10.3.4 范例3:for循环遍历ArrayList
10.3.5 范例4:用动态数组保存学生姓名
10.4 迭代器
10.4.1 迭代器的创建和使用
10.4.2 范例5:Iterator遍历ArrayList
10.4.3 范例6:ListIterator遍历ArrayList
10.5 经典范例
10.5.1 经典范例1:制作电子词典
10.5.2 经典范例2:制作手机电话本
10.6 本章小结
10.7 实战练习
第11章 异常处理
视频讲解:49分钟
11.1 异常概述
11.2 异常的分类
11.2.1 可控式异常
11.2.2 运行时异常
11.2.3 范例1:算术异常
11.2.4 范例2:数组下标越界异常
11.3 获取异常信息
11.4 处理异常
11.4.1 使用try…catch处理异常
11.4.2 使用try…catch…finally处理异常
11.4.3 使用try…finally处理异常
11.5 抛出异常
11.5.1 使用throws声明抛出异常
11.5.2 使用throw语句抛出异常
11.5.3 范例3:方法中抛出异常
11.5.4 范例4:方法上抛出异常
11.6 自定义异常
11.6.1 创建自定义异常类
11.6.2 使用自定义异常类
11.7 异常的使用原则
11.8 经典范例
11.8.1 经典范例1:捕获单个异常
11.8.2 经典范例2:数据库操作异常
11.9 本章小结
11.10 实战练习
第12章 输入/输出
视频讲解:30分钟
12.1 流概述
12.2 输入/输出流
12.2.1 输入流
12.2.2 输出流
12.2.3 范例1:显示指定类型的文件
12.2.4 范例2:查找替换文本文件内容
12.3 File类
12.3.1 文件的创建与删除
12.3.2 获取文件信息
12.3.3 范例3:文件批量重命名
12.3.4 范例4:快速批量移动文件
12.4 文件输入/输出流
12.4.1 FileInputStream与FileOutputStream类
12.4.2 FileReader类和FileWriter类
12.4.3 范例5:窗体动态加载磁盘文件
12.4.4 范例6:删除文件夹中所有文件
12.5 带缓存的输入/输出流
12.5.1 BufferedInputStream类与BufferedOutputStream类
12.5.2 BufferedReader类与BufferedWriter类
12.5.3 范例7:读取属性文件单个属性值
12.5.4 范例8:合并多个TXT文件
12.6 数据输入/输出流
12.7 ZIP压缩输入/输出流
12.7.1 压缩文件
12.7.2 解压缩ZIP文件
12.7.3 范例9:压缩包解压到指定文件夹
12.7.4 范例10:压缩所有子文件夹
12.8 经典范例
12.8.1 经典范例1:简单的投票软件
12.8.2 经典范例2:电子通讯录
12.9 本章小结
12.10 实战练习
第13章 Swing程序设计
视频讲解:51分钟
13.1 Swing概述
13.2 Swing常用窗体
13.2.1 JFrame框架窗体
13.2.2 JDialog窗体
13.2.3 范例1:设置窗体大小
13.2.4 范例2:禁止改变窗体的大小
13.3 标签组件与图标
13.3.1 标签的使用
13.3.2 图标的使用
13.3.3 范例3:为图片添加说明
13.4 常用布局管理器
13.4.1 绝对布局
13.4.2 流布局管理器
13.4.3 边界布局管理器
13.4.4 网格布局管理器
13.5 常用面板
13.5.1 JPanel面板
13.5.2 JScrollPane面板
13.6 按钮组件
13.6.1 提交按钮组件
13.6.2 单选按钮组件
13.6.3 复选框组件
13.7 列表组件
13.7.1 下拉列表框组件
13.7.2 列表框组件
13.8 文本组件
13.8.1 文本框组件
13.8.2 密码框组件
13.8.3 文本域组件
13.8.4 范例4:给文本域设置背景图片
13.8.5 范例5:给文本区设置背景图片
13.9 经典范例
13.9.1 经典范例1:设置窗体标题栏图标
13.9.2 经典范例2:随机更换窗体背景
13.10 本章小结
13.11 实战练习
第3篇 高 级 篇
第14章 高级事件处理
视频讲解:30分钟
14.1 键盘事件
14.2 鼠标事件
14.3 窗体事件
14.3.1 捕获窗体焦点变化事件
14.3.2 捕获窗体状态变化事件
14.3.3 捕获其他窗体事件
14.4 选项事件
14.5 表格模型事件
14.6 经典范例
14.6.1 经典范例1:模拟相机拍摄
14.6.2 经典范例2:打地鼠游戏
14.7 本章小结
14.8 实战练习
第15章 多线程
视频讲解:41分钟
15.1 线程简介
15.2 实现线程的两种方式
15.2.1 继承Thread类
15.2.2 实现Runnable接口
15.2.3 范例1:查看线程的运行状态
15.2.4 范例2:查看JVM中的线程名
15.3 线程的生命周期
15.4 操作线程的方法
15.4.1 线程的休眠
15.4.2 线程的加入
15.4.3 线程的中断
15.4.4 线程的礼让
15.4.5 范例3:查看和修改线程优先级
15.4.6 范例4:休眠当前线程
15.5 线程的优先级
15.6 线程同步
15.6.1 线程安全
15.6.2 线程同步机制
15.7 线程间的通信
15.8 经典范例
15.8.1 经典范例1:查看JVM中的线程名
15.8.2 经典范例2:查看和修改线程名称
15.9 本章小结
15.10 实战练习
第16章 网络通信
视频讲解:33分钟
16.1 网络程序设计基础
16.1.1 局域网与因特网
16.1.2 网络协议
16.1.3 端口和套接字
16.1.4 范例1:获得内网的所有IP地址
16.1.5 范例2:解析网页中的内容
16.2 TCP程序设计基础
16.2.1 InetAddress类
16.2.2 ServerSocket类
16.2.3 TCP网络程序
16.2.4 范例3:设置等待连接的超时时间
16.2.5 范例4:获得Socket信息
16.3 UDP程序设计基础
16.3.1 DatagramPacket类
16.3.2 DatagramSocket类
16.3.3 UDP网络程序
16.4 经典范例
16.4.1 经典范例1:聊天室服务器端
16.4.2 经典范例2:聊天室客户端
16.5 本章小结
16.6 实战练习
第17章 JDBC操作数据库
视频讲解:1小时25分钟
17.1 JDBC概述
17.1.1 数据库概述
17.1.2 JDBC技术
17.2 JDBC的常用类和接口
17.2.1 DriverManager类
17.2.2 Connection接口
17.2.3 Statement接口
17.2.4 PreparedStatement接口
17.2.5 ResultSet接口
17.3 通过JDBC操作数据库
17.3.1 加载数据库驱动
17.3.2 建立连接
17.3.3 向数据库添加数据
17.3.4 获得查询结果集
17.3.5 更改数据库中的数据
17.3.6 删除数据库中的数据
17.3.7 模糊查询
17.3.8 范例1:将复选框内容存到数据库
17.3.9 范例2:查询三年二班的学生信息
17.4 经典范例
17.4.1 经典范例1:管理学生信息
17.4.2 经典范例2:权限管理
17.5 本章小结
17.6 实战练习
第18章 Swing高级组件
视频讲解:48分钟
18.1 利用JTable类直接创建表格
18.1.1 创建表格
18.1.2 定制表格
18.1.3 操纵表格
18.1.4 范例1:列表元素与提示信息
18.1.5 范例2:监听列表单击事件
18.2 表格模型与表格
18.2.1 利用表格模型创建表格
18.2.2 维护表格模型
18.2.3 范例3:实现自动排序列表
18.2.4 范例4:可以预览字体的列表
18.3 提供行标题栏的表格
18.3.1 提供行标题栏的表格
18.3.2 范例5:提供行标题栏的表格
18.4 Swing树组件
18.4.1 简单的树
18.4.2 处理选中节点事件
18.4.3 遍历树节点
18.4.4 定制树
18.4.5 维护树模型
18.4.6 处理展开节点事件
18.4.7 范例6:为树节点增加提示信息
18.4.8 范例7:双击编辑树节点功能
18.5 经典范例
18.5.1 经典范例1:编写中国省市信息树
18.5.2 经典范例2:监听节点的选择事件
18.6 本章小结
18.7 实战练习
第19章 高级布局管理器
视频讲解:39分钟
19.1 箱式布局管理器
19.2 卡片布局管理器
19.3 网格组布局管理器
19.4 弹簧布局管理器
19.4.1 使用弹簧布局管理器
19.4.2 使用弹簧和支柱
19.4.3 利用弹簧控制组件大小
19.5 经典范例
19.5.1 经典范例1:制作圆形布局管理器
19.5.2 经典范例2:制作阶梯布局管理器
19.6 本章小结
19.7 实战练习
第20章 AWT绘图技术
视频讲解:33分钟
20.1 绘制图形
20.1.1 Graphics
20.1.2 Graphics2D
20.1.3 范例1:绘制指定角度的填充扇形
20.1.4 范例2:绘制多边形
20.2 绘图颜色与笔画属性
20.2.1 设置颜色
20.2.2 笔画属性
20.2.3 范例3:为图形填充渐变色
20.2.4 范例4:设置笔画的粗细
20.3 绘制文本
20.3.1 设置字体
20.3.2 显示文字
20.3.3 范例5:设置文本的字体
20.3.4 范例6:设置文本的图形和颜色
20.4 图片处理
20.4.1 绘制图片
20.4.2 放大与缩小
20.4.3 图片翻转
20.4.4 图片旋转
20.4.5 图片倾斜
20.4.6 范例7:图形的交运算
20.4.7 范例8:图形的异或运算
20.5 经典范例
20.5.1 经典范例1:绘制花瓣
20.5.2 经典范例2:绘制艺术图案
20.6 本章小结
20.7 实战练习
第4篇 项 目 篇
第21章 酒店管理系统
视频讲解:1小时21分钟
21.1 概述
21.2 系统分析
21.3 系统设计
21.3.1 系统目标
21.3.2 系统功能结构
21.3.3 系统预览
21.3.4 业务流程图
21.3.5 文件夹结构设计
21.4 数据库设计
21.4.1 数据库分析
21.4.2 数据库概念设计
21.4.3 数据库逻辑结构设计
21.4.4 视图设计
21.5 公共模块设计
21.5.1 编写数据库连接类
21.5.2 封装常用的操作数据库的方法
21.5.3 自定义表格组件
21.5.4 编写利用正则表达式验证数据合法性的方法
21.6 主窗体设计
21.7 用户登录窗口设计
21.8 开台签单工作区设计
21.8.1 开台签单工作区功能概述
21.8.2 开台签单工作区技术分析
21.8.3 开台签单工作区实现过程
21.8.4 单元测试
21.9 自动结账工作区设计
21.9.1 自动结账工作区功能概述
21.9.2 自动结账工作区技术分析
21.9.3 自动结账工作区实现过程
21.10 结账报表工作区设计
21.10.1 结账报表工作区功能概述
21.10.2 结账报表工作区技术分析
21.10.3 结账报表工作区实现过程
21.10.4 单元测试
21.11 后台管理工作区设计
21.11.1 后台管理工作区功能概述
21.11.2 后台管理工作区技术分析
21.11.3 后台管理工作区实现过程
21.11.4 单元测试
21.12 开发技巧与难点分析
21.13 使用Visio逆向生成数据库E-R图
21.14 本章小结