第1章 Java语言语法基础 1
1.1 Java语言概述 1
1.1.1 Java语言的对象和类 1
1.1.2 第一个Java语言程序 2
1.1.3 Java语言源程序的编译和运行 4
1.2 基本数据类型 7
1.2.1 标识符、变量和常量 7
1.2.2 基本数据类型 8
1.2.3 各类型数据间的相互转换 10
1.3 运算符及表达式 11
1.3.1 赋值运算符 12
1.3.2 算术运算符和算术表达式 12
1.3.3 关系运算符和关系表达式 13
1.3.4 逻辑运算符和逻辑表达式 13
1.3.5 位运算符和位运算表达式 14
1.3.6 条件运算符与条件表达式 14
1.3.7 扩展赋值运算符 15
1.3.8 运算符的优先级和表达式语句 15
1.4 程序流程控制语句 16
1.4.1 选择控制语句 16
1.4.2 循环控制语句 19
1.4.3 转向控制语句 22
1.5 数组 24
1.5.1 一维数组的定义 24
1.5.2 一维数组元素的引用 24
1.5.3 二维数组的定义 25
1.5.4 二维数组元素的引用 26
1.6 方法 26
1.6.1 方法的定义和调用 27
1.6.2 方法的按值调用和引用调用 29
1.6.3 方法应用的程序设计 30
1.6.4 方法的重载 31
1.7 复习题 31
1.7.1 问答思考题 31
1.7.2 程序设计题 32
1.8 上机实验 34
1.8.1 验证性实验 34
1.8.2 设计性实验 34
1.8.3 综合性实验 34
第2章 面向对象理论基础 35
2.1 类与对象 35
2.1.1 类的定义 35
2.1.2 实例化对象 36
2.1.3 构造方法 37
2.1.4 构造方法的重载 38
2.1.5 类变量和类方法 38
2.2 对象的使用 40
2.2.1 调用对象的成员 40
2.2.2 对象做类的成员 41
2.2.3 方法中使用对象 42
2.2.4 对象数组 43
2.2.5 this对象 43
2.3 类与子类 45
2.3.1 类的继承 45
2.3.2 变量的隐藏和方法的覆盖 45
2.3.3 super对象 46
2.3.4 私有变量和私有方法 47
2.3.5 父类对象和子类对象 48
2.3.6 抽象类和最终类 50
2.4 类与接口 52
2.4.1 接口的定义与实现 52
2.4.2 一个类实现多个接口 53
2.4.3 接口的多重继承 54
2.5 类与包 55
2.5.1 包的创建 56
2.5.2 包的使用 57
2.5.3 访问权限修饰符 59
2.5.4 Java类库包概述 62
2.6 复习题 63
2.6.1 问答思考题 63
2.6.2 程序设计题 64
2.7 上机实验 66
2.7.1 验证性实验 66
2.7.2 设计性实验 66
2.7.3 综合性实验 66
第3章 Java类库语言包 67
3.1 异常类 68
3.1.1 异常类概述 68
3.1.2 运行时异常 69
3.1.3 异常捕获 70
3.1.4 异常声明 71
3.1.5 异常类的方法 72
3.1.6 自定义异常 73
3.2 系统运行类 75
3.2.1 根类Object 75
3.2.2 类描述类Class 76
3.2.3 系统类System 78
3.3 数学运算类 81
3.3.1 基本数据类型包装类 81
3.3.2 数学运算类Math 84
3.4 字符串类 86
3.4.1 String类 86
3.4.2 StringBuffer类 89
3.4.3 main方法及命令行参数 92
3.5 复习题 93
3.5.1 问答思考题 93
3.5.2 程序设计题 94
3.6 上机实验 95
3.6.1 验证性实验 95
3.6.2 设计性实验 95
3.6.3 综合性实验 95
第4章 Java类库实用包 96
4.1 通用类 97
4.1.1 日期类Date 97
4.1.2 日历类Calendar 97
4.1.3 格列高里历类GregorianCalendar 98
4.1.4 字符串标记类StringTokenizer 99
4.2 集合类 100
4.2.1 聚集接口Collection 101
4.2.2 集合接口Set 101
4.2.3 散列集合类HashSet 102
4.3 列表类 103
4.3.1 列表接口List 103
4.3.2 数组列表类ArrayList 104
4.3.3 向量类Vector 105
4.3.4 链接列表类LinkedList 107
4.4 遍历接口 108
4.4.1 通用迭代器接口Iterator 108
4.4.2 列表迭代器接口ListIterator 109
4.4.3 枚举接口Enumeration 110
4.5 映射类 110
4.5.1 映射接口 111
4.5.2 散列映射类HashMap 111
4.5.3 散列表类Hashtable 112
4.6 复习题 114
4.6.1 问答思考题 114
4.6.2 程序设计题 114
4.7 上机实验 115
4.7.1 验证性实验 115
4.7.2 设计性实验 115
4.7.3 综合性实验 116
第5章 Java类库输入/输出包 117
5.1 文件类 118
5.1.1 文件的创建与删除 118
5.1.2 文件名称与路径的操作 119
5.1.3 文件属性的操作 120
5.1.4 文件过滤器的应用 121
5.2 字节基本输入/输出流类 122
5.2.1 字节输入/输出流类概述 122
5.2.2 文件输入/输出流类 124
5.2.3 字节数组输入/输出流类 126
5.2.4 串行输入流类 128
5.3 字节过滤输入/输出流类 129
5.3.1 数据流DataStream 130
5.3.2 缓冲流BufferedStream 132
5.3.3 打印流PrintStream 133
5.4 字符输入/输出流类Reader/Writer 133
5.4.1 字符输入/输出流类概述 134
5.4.2 输入流读类和输出流写类 135
5.4.3 文件读类、文件写类、缓冲读类和缓冲写类 136
5.4.4 打印写类 138
5.4.5 管道流类PipedStream 138
5.5 随机存取文件流类 140
5.6 对象串行化 141
5.6.1 对象的串行化 141
5.6.2 对象的反串行化 142
5.6.3 对象串行化示例 142
5.7 复习题 143
5.7.1 问答思考题 143
5.7.2 程序设计题 143
5.8 上机实验 145
5.8.1 验证性实验 145
5.8.2 设计性实验 145
5.8.3 综合性实验 145
第6章 图形用户界面类库包 146
6.1 AWT类库包简介 146
6.1.1 组件类Component 146
6.1.2 容器类Container 148
6.1.3 颜色类Color 148
6.1.4 窗口Window和标签Label 149
6.1.5 框架Frame和按钮Button 150
6.1.6 面板Panel及其嵌套 152
6.1.7 布局管理器类LayoutManagers 152
6.2 GUI的事件处理模型 156
6.2.1 事件类Event 156
6.2.2 事件监听器接口 157
6.2.3 委托事件模型的程序设计和窗口事件 159
6.2.4 一个监听器类实现多个监听器接口和行动事件 160
6.2.5 事件适配器和容器事件 161
6.2.6 内部类和组件事件 163
6.2.7 匿名类和焦点事件 165
6.2.8 画布、鼠标事件、键盘事件和自监听 166
6.3 Swing类库包常用容器 168
6.3.1 框架JFrame和标签JLabel 169
6.3.2 对话框JDialog 171
6.3.3 面板JPanel 172
6.3.4 滚动窗格JScrollPane和图像图标ImageIcon 173
6.3.5 选择窗格 174
6.4 Swing类库包常用控件 177
6.4.1 抽象按钮AbstractButton和按钮JButton 177
6.4.2 肘节按钮JToggleButton和广播按钮JRadioButton 179
6.4.3 校验盒JCheckBox与项目事件 180
6.4.4 文本控件及其应用 182
6.4.5 菜单控件及其应用 186
6.4.6 滚动条与调整事件 189
6.4.7 进度条与变动事件 191
6.4.8 工具条 192
6.5 Swing类库包高级控件 194
6.5.1 组合盒JComboBox 194
6.5.2 列表JList 196
6.5.3 表格JTable 199
6.6 复习题 205
6.6.1 问答思考题 205
6.6.2 程序设计题 205
6.7 上机实验 207
6.7.1 验证性实验 207
6.7.2 设计性实验 207
6.7.3 综合性实验 207
第7章 数据库程序设计 208
7.1 简单数据库程序设计 208
7.1.1 创建数据库 209
7.1.2 选配ODBC数据源 210
7.1.3 加载数据库驱动程序 210
7.1.4 创建连接对象 211
7.1.5 创建声明对象 211
7.1.6 获得结果集 212
7.1.7 解析返回结果 213
7.2 数据库操作程序设计 214
7.2.1 创建表格语句、插入操作语句和删除表格语句 215
7.2.2 修改表格语句、更新操作语句和删除操作语句 216
7.2.3 查询操作语句 217
7.3 SQL多接口的应用 219
7.3.1 数据库元数据接口 219
7.3.2 结果集元数据接口 221
7.3.3 预编译声明接口 222
7.3.4 可调用声明接口 226
7.3.5 可滚动的结果集 227
7.3.6 可更新的结果集 229
7.4 图形用户界面数据库程序设计 230
7.4.1 表示层程序设计 231
7.4.2 业务层程序设计 232
7.4.3 逐条记录显示事件处理设计 234
7.4.4 数据层程序设计 235
7.5 学生成绩管理信息系统 236
7.5.1 表格界面程序设计 237
7.5.2 事件处理程序 238
7.5.3 数据库管理程序 240
7.6 复习题 241
7.6.1 问答思考题 241
7.6.2 程序设计题 242
7.7 上机实验 242
7.7.1 验证性实验 242
7.7.2 设计性实验 242
7.7.3 综合性实验 243
第8章 网络程序设计 244
8.1 多线程设计 244
8.1.1 线程的创建与运行 245
8.1.2 线程的状态 247
8.1.3 线程的优先级 248
8.1.4 线程的共享与同步 249
8.2 网络程序设计基础 251
8.3 网络地址类程序设计 254
8.3.1 统一资源定位器类 254
8.3.2 统一资源定位连接类 256
8.3.3 互联网地址类 258
8.4 TCP协议的程序设计 259
8.4.1 套接口类和服务器套接口类 259
8.4.2 服务器方程序设计 260
8.4.3 客户机方程序设计 262
8.4.4 多客户机的程序设计 262
8.5 UDP协议的程序设计 264
8.5.1 数据报套接口类和数据报包类 264
8.5.2 服务器方程序设计 265
8.5.3 客户机方程序设计 266
8.5.4 广播通信程序设计 267
8.6 基于客户机/服务器模式聊天室的建立 268
8.6.1 服务器方程序 269
8.6.2 客户机方程序 270
8.7 复习题 271
8.7.1 问答思考题 271
8.7.2 程序设计题 271
8.8 上机实验 272
8.8.1 验证性实验 272
8.8.2 设计性实验 272
8.8.3 综合性实验 273
第9章 多媒体程序设计 274
9.1 小应用程序简介 274
9.1.1 小应用程序的生命周期及主要方法 275
9.1.2 小应用程序的运行 276
9.1.3 小应用程序参数的传递 278
9.2 绘图与文字程序设计 279
9.2.1 Graphics类绘图 280
9.2.2 Graphics2D类绘图 281
9.2.3 文字输出 284
9.3 图像程序设计 287
9.3.1 图像的加载与显示 287
9.3.2 图像观察器接口 289
9.3.3 媒体跟踪器类 291
9.3.4 创建图像 292
9.3.5 抓取像素 295
9.3.6 图像处理 297
9.4 声音程序设计 299
9.4.1 小应用播放声音 300
9.4.2 采样包播放声音 301
9.4.3 采样包录制声音 304
9.4.4 乐器数字接口MIDI播放乐曲 307
9.4.5 乐器数字接口MIDI合成乐曲 309
9.5 动画的程序设计 311
9.5.1 多文字的打字输出 312
9.5.2 显示卷动的画面 312
9.5.3 绘制变动的图画 314
9.5.4 播放连续的图像 316
9.6 复习题 317
9.6.1 问答思考题 317
9.6.2 程序设计题 317
9.7 上机实验 318
9.7.1 验证性实验 318
9.7.2 设计性实验 318
9.7.3 综合性实验 318
参考文献 319