第1章 Java面向对象开发方法 1
1.1 结构化软件开发和面向对象开发方法 1
1.1.1 结构化软件开发简介 1
1.1.2 面向对象软件开发简介 2
1.2 面向对象开发的核心概念 3
1.2.1 面向对象编程的基本特征:交互对象 4
1.2.2 属性和值 4
1.2.3 操作和消息 4
1.2.4 类和类型 4
1.2.5 变量和方法 5
1.2.6 实例与类变量、类方法 5
1.2.7 面向对象的特性 6
1.2.8 面向对象的原则 7
1.3 可视化面向对象建模语言UML 9
1.3.1 UML语言简介 9
1.3.2 实现宠物商店系统 16
1.4 小结 20
习题 21
第2章 Java程序设计基础 23
2.1 创建Application程序和Applet程序 23
2.1.1 创建Application程序 23
2.1.2 创建Applet程序 24
2.2 使用JDK和集成开发环境Eclipse 25
2.2.1 用JDK管理Java应用 25
2.2.2 Eclipse的开发技术 27
2.3 Java语言元素 28
2.3.1 注释 28
2.3.2 关键字和标识符 29
2.3.3 数据类型和变量 29
2.3.4 语句 31
2.3.5 运算符和表达式 32
2.4 流程控制 36
2.4.1 顺序语句 36
2.4.2 选择语句 36
2.4.3 循环语句 39
2.4.4 跳转语句 41
2.5 数组和字符串 42
2.5.1 一维数组 42
2.5.2 二维数组 44
2.5.3 定长字符串String 45
2.5.4 变长字符串StringBuffer 47
2.6 小结 48
习题 48
第3章 类和对象 51
3.1 类 51
3.1.1 类定义 52
3.1.2 声明成员变量 54
3.1.3 定义成员方法 57
3.1.4 定义构造方法 59
3.1.5 封装性的概念 61
3.2 对象 68
3.2.1 生成和使用对象 68
3.2.2 使用关键字this 73
3.2.3 对象的生命周期 74
3.3 Java类库包 78
3.3.1 创建和使用包 78
3.3.2 常用类库包 80
3.3.3 综合示例 83
3.4 封装的设计原则 87
3.5 小结 88
习题 89
第4章 Java的继承和多态 93
4.1 Java的继承机制 93
4.1.1 Java类层次结构 94
4.1.2 继承示例 95
4.1.3 super关键字 97
4.1.4 继承的使用原则 99
4.2 多态 100
4.2.1 方法的多态 100
4.2.2 类型的多态 107
4.2.3 多态示例 112
4.3 面向对象设计的原则 116
4.4 小结 119
习题 120
第5章 Java的抽象类和接口 125
5.1 Java的抽象性 125
5.1.1 抽象性的表示方式 126
5.1.2 抽象类和抽象方法 127
5.1.3 抽象类的应用 130
5.2 接口 132
5.2.1 接口的特征 133
5.2.2 接口的实现方式 135
5.2.3 接口的应用 137
5.3 抽象类和接口的比较 141
5.3.1 抽象类与接口的共同点 141
5.3.2 抽象类与接口的区别 141
5.4 抽象的设计原则 143
5.5 小结 144
习题 144
第6章 Java异常处理 148
6.1 Java异常处理机制概述 148
6.1.1 什么是异常 148
6.1.2 可控异常和不可控异常 148
6.2 Java异常处理方法 150
6.2.1 try-catch-finally语句捕获异常 150
6.2.2 throw和throws语句 151
6.3 自定义异常 152
6.4 小结 153
习题 153
第7章 I/O流及文件 155
7.1 I/O流概述 155
7.1.1 什么是流 155
7.1.2 流的作用 155
7.1.3 流的分类 156
7.1.4 文本文件与二进制文件 156
7.2 字节流与字符流 157
7.2.1 InputStream类和OutputStream类 157
7.2.2 Reader类和Writer类 159
7.3 实例分析:读写文本文件 161
7.3.1 写入一个文本文件 162
7.3.2 文本文件的输出 163
7.3.3 读取一个文本文件 164
7.3.4 文本文件读写应用小程序 165
7.4 文件类 167
7.4.1 顺序访问文件类File 167
7.4.2 随机访问文件类RandomAccessFile 169
7.5 读/写二进制文件 170
7.5.1 写二进制数据 171
7.5.2 读二进制数据 172
7.5.3 二进制读写应用小程序 173
7.6 对象序列化 175
7.7 小结 178
习题 178
第8章 Java GUI 181
8.1 AWT和Swing工具集 181
8.1.1 重量级和轻量级组件 182
8.1.2 AWT常用组件 183
8.1.3 Swing常用组件 186
8.2 AWT容器布局管理器 187
8.2.1 流式布局管理器FlowLayout 188
8.2.2 边界布局管理器BorderLayout 189
8.2.3 网格布局管理器GridLayout 190
8.2.4 网格包布局管理器GridBagLayout 191
8.3 事件处理 193
8.3.1 委托事件处理模型 194
8.3.2 AWT事件和事件监听器接口 195
8.3.3 事件适配器 197
8.4 Swing组件及事件 198
8.4.1 窗口组件 199
8.4.2 按钮组件 200
8.4.3 文本组件 200
8.4.4 列表组件 202
8.4.5 菜单组件 204
8.4.6 对话框组件 206
8.5 实例分析:设计一个基本GUI 207
8.6 图形图像 211
8.6.1 AWT绘图 211
8.6.2 Swing绘图 213
8.6.3 图像 213
8.7 MVC设计模式 214
8.8 小结 217
习题 217
第9章 Java多线程技术 219
9.1 Java线程运行机制 219
9.1.1 概述 219
9.1.2 线程的概念 219
9.1.3 多线程销售火车票 220
9.1.4 Thread类和Runnable接口 223
9.2 线程的状态和生命周期 224
9.3 线程的调度与线程的睡眠控制 227
9.3.1 线程的调度 227
9.3.2 线程的睡眠控制 228
9.4 线程的同步 229
9.4.1 线程互斥示例 229
9.4.2 线程协作示例 231
9.5 多线程设计的优越之处 232
9.6 小结 233
习题 233
第10章 Socket网络编程 236
10.1 访问网络资源 236
10.1.1 使用URL访问网络资源 236
10.1.2 从Applet访问网络资源 238
10.2 TCP Socket通信 240
10.2.1 TCP Socket通信 240
10.2.2 TCP Socket通信示例 243
10.3 UDP数据报通信 244
10.3.1 UDP数据报通信原理 244
10.3.2 UDP数据报通信示例 246
10.4 小结 248
习题 248
第11章 Java数据库编程 249
11.1 关系数据库原理 249
11.1.1 关系 249
11.1.2 关系运算 251
11.1.3 关系数据库设计 251
11.2 MYSQL数据库 253
11.2.1 MYSQL下载与安装配置 253
11.2.2 创建数据库与表 255
11.2.3 MYSQL的数据操作命令 256
11.3 JDBC 257
11.3.1 什么是JDBC 257
11.3.2 装载JDBC驱动 258
11.3.3 连接数据库 258
11.3.4 执行SQL语句 259
11.3.5 结果集查询 260
11.3.6 数据库连接示例 261
11.4 小结 263
习题 263
第12章 集合类与泛型集合 265
12.1 使用集合类管理购物车信息 265
12.1.1 集合类框架 265
12.1.2 Collection接口 267
12.1.3 集合框架中的实现类 267
12.1.4 使用集合框架类实现购物车功能 274
12.2 泛型集合 277
12.2.1 为什么使用泛型集合 277
12.2.2 泛型的语法 278
12.2.3 泛型的优点 279
12.2.4 使用泛型集合实现购物车功能 280
12.3 小结 281
习题 282
第13章 综合案例:宠物商店 285
13.1 宠物商店需求分析 285
13.2 宠物商店结构设计 286
13.3 数据库设计与实现 289
13.4 代码编写及运行效果 291
13.5 小结 311
参考文献 312