项目1 基于面向对象思想设计桌面应用 1
1.1面向过程和面向对象 2
1.1.1两种分析问题的思维方式 2
1.1.2两种程序设计方法 2
1.2初识对象、类和实体概念 4
1.3了解Java语言 5
1.4项目案例及设计 7
1.4.1先导案例:图形参数计算程序 7
1.4.2实战案例:闹钟工具小软件 7
知识梳理 8
项目2 应用基本语法实现图形参数计算逻辑 9
2.1先导任务一:显示矩形的周长和面积 10
2.1.1什么是Java程序 10
2.1.2 Java开发环境及工具 11
1.Java开发包 11
2.Java开发工具 12
3.JDK的安装 12
2.1.3计算机处理Java程序的过程 13
2.1.4任务实施 15
2.2先导任务二:计算矩形的周长和面积 15
2.2.1任务解读 15
2.2.2知识学习 15
1.基本数据类型 15
2.变量和常量 17
3.数据类型转换 18
4.操作符 19
5.控制语句 24
2.2.3任务实施 32
知识梳理 33
项目3 应用类的特性设计图形参数计算程序 34
3.1先导任务三:编写显示图形参数的程序 35
3.1.1任务解读 35
3.1.2知识学习 35
1.类的抽象与封装 35
2.Java类的定义 35
3.类的成员 38
4.包 41
5.编写Java程序 42
3.1.3任务实施 43
3.1.4知识延伸:代码编写规范 44
3.2先导任务四:编写三角形参数计算程序 45
3.2.1任务解读 45
3.2.2知识学习 45
1.类的继承 45
2.访问控制符 46
3.包的划分 49
3.2.3任务实施 49
3.2.4知识延伸:this、super关键字和Class对象 51
3.3先导任务五:编写四边形参数计算程序 55
3.3.1任务解读 55
3.3.2知识学习 55
类的多态 55
3.3.3任务实施 57
3.4先导任务六:编写具有可扩展性的图形参数计算程序 58
3.4.1任务解读 58
3.4.2知识学习 59
1.抽象类和接口 59
2.非访问限制符abstract、static和final 62
3.4.3任务实施 64
知识梳理 68
项目4 利用Swing组件实现闹钟的主界面 70
4.1实战任务一:创建闹钟工具软件项目 71
4.1.1 Eclipse安装与配置 71
4.1.2任务实施 73
4.2实战任务二:构建闹钟工具软件的界面 79
4.2.1任务解读 79
4.2.2知识学习 80
1.引用类型 80
2.图形用户界面的常用组件 86
3.用户界面设计的基本原则 102
4.2.3任务实施 103
4.3实战任务三:优化闹钟主界面布局 108
4.3.1任务解读 108
4.3.2知识学习 109
布局管理器 109
4.3.3任务实施 117
4.4实战任务四:美化闹钟主界面 122
4.4.1任务解读 122
4.4.2知识学习 123
1.Java2D绘图机制 123
2.颜色设置 124
3.字体设置 124
4.图像加载 125
5.图形绘制 128
4.4.3任务实施 129
知识梳理 135
项目5 利用事件处理机制实现闹铃的设定 137
5.1实战任务五:设定闹铃及实现程序最小化至任务栏 138
5.1.1任务解读 138
5.1.2知识学习 138
1.事件模型 138
2.事件处理机制 139
3.内部类 142
4.事件处理的应用 145
5.事件适配器类 153
5.1.3任务实施 155
知识梳理 170
项目6 利用异常机制处理闹钟软件的运行错误 172
6.1实战任务六:防止背景图片找不到而导致的程序中断 173
6.1.1任务解读 173
6.1.2知识学习 174
1.异常 174
2.异常处理机制 174
3.异常的捕获和处理 175
4.自定义异常 182
5.Logging API 184
6.1.3任务实施 188
知识梳理 189
项目7 应用输入/输出机制实现铃声上传/下载 191
7.1实战任务七:获取要上传的铃声文件 193
7.1.1任务解读 193
7.1.2知识学习 193
1.输入/输出 193
2.字节流和字符流读写操作 196
3.字节流与字符流间的转换 204
7.1.3任务实施 206
7.2实战任务八:实现铃声的上传与下载 210
7.2.1任务解读 210
7.2.2知识学习 211
1.JDBC 211
2.JDBC接口和类 211
3.访问数据库 212
7.2.3任务实施 215
知识梳理 222
项目8 应用集合类操作铃声集及数据库参数 224
8.1实战任务九:保存指定目录的多个铃声文件 225
8.1.1任务解读 225
8.1.2知识学习 225
1.集合类和泛型 225
2.ArrayList 229
3.HashSet 231
8.1.3任务实施 232
8.2实战任务十:实现数据库连接参数与功能代码的分离 234
8.2.1任务解读 234
8.2.2知识学习 234
1. HashMap 234
2. Properties 236
8.2.3任务实施 238
知识梳理 243
项目9 利用多线程技术实现定时响铃 244
9.1实战任务十一:实现闹钟启动的计时功能 245
9.1.1任务解读 245
9.1.2知识学习 245
1.了解线程 245
2.创建线程 247
3.线程并发控制 249
4.线程通信机制 260
5.线程通信的实现 261
9.1.3任务实施 263
9.2实战任务十二:实现铃声播放功能 266
9.2.1任务解读 266
9.2.2知识学习 267
1.音乐播放 267
2.利用线程实现动画 269
9.2.3任务实施 272
知识梳理 276
项目10 利用Socket实现铃声远程上传/下载 278
10.1实战任务十三:确定铃声文件远程上传的编程架构 279
10.1.1任务解读 279
10.1.2知识学习 279
1.初识网络编程 279
2.网络协议 280
3.套接字 281
4.Java网络类 282
10.1.3任务实施 288
10.2实战任务十四:实现铃声文件远程上传模块的服务器 288
10.2.1任务解读 288
10.2.2任务实施 289
10.3实战任务十五:实现铃声文件远程上传模块的客户端 293
10.3.1任务解读 293
10.3.2任务实施 294
10.4拓展任务:实现消息的快速传递 296
10.4.1任务解读 296
10.4.2知识学习 296
数据报Socket编程 296
10.4.3任务实施 298
知识梳理 300
附录 知识图谱 301