《Java 程式设计实用教程》是2010年4月人民邮电出版社在出版的书籍,作者是耿祥义、张跃平。本书注重结合实例,循序渐进地向读者介绍了Java语言的重要知识点,特彆强调Java面向对象编程的思想。
基本介绍
- 书名:Java 程式设计实用教程
- 作者:耿祥义 张跃平
- ISBN:978-7-115-22024-0
- 页数:338页
- 定价:36.00元
- 出版社:人民邮电出版社
- 出版时间:2010年4月
- 装帧:平装
- 开本:16开
- 字数:570千字
- 责任编辑:刘博
内容提要
Java语言具有面向对象、与平台无关、安全、稳定、多执行绪等优良特性,是目前软体设计中极为强大的程式语言。全书分为16章,分别讲解了简单数据类型、运算符、表达式和语句、类与对象、子类与继承、接口与多态、数组与枚举、内部类与异常类、常用实用类、Java输入输出流、JDBC资料库操作、泛型与集合框架、Java多执行绪机制、Java网路基础、图形用户界面设计、Java Applet程式等内容。
本书适合作为高等院校计算机相关专业“Java语言程式设计”以及“面向对象语言”课程的教材。
目录
第1章 初识Java 1
1.1 Java诞生的原因 2
1.2 Java的地位 4
1.2.1 网路地位 4
1.2.2 语言地位 4
1.2.3 需求地位 4
1.3 安装JDK 4
1.3.1 3种平台简介 4
1.3.2 安装Java SE平台 5
1.4 Java程式的开发步骤 7
1.5 一个简单的Java应用程式 8
1.5.1 编写源档案 8
1.5.2 编译 9
1.5.3 运行 10
1.6 Java的语言特点 10
1.6.1 简单 10
1.6.2 面向对象 11
1.6.3 多执行绪 11
1.6.4 安全 11
1.6.5 动态 11
习题1 11
1.1 Java诞生的原因 2
1.2 Java的地位 4
1.2.1 网路地位 4
1.2.2 语言地位 4
1.2.3 需求地位 4
1.3 安装JDK 4
1.3.1 3种平台简介 4
1.3.2 安装Java SE平台 5
1.4 Java程式的开发步骤 7
1.5 一个简单的Java应用程式 8
1.5.1 编写源档案 8
1.5.2 编译 9
1.5.3 运行 10
1.6 Java的语言特点 10
1.6.1 简单 10
1.6.2 面向对象 11
1.6.3 多执行绪 11
1.6.4 安全 11
1.6.5 动态 11
习题1 11
第2章 初识对象和简单数据类型 13
2.1 问题的提出 13
2.2 简单的矩形类 14
2.3 使用矩形类创建对象 15
2.3.1 用类声明对象 15
2.3.2 为对象分配变数 15
2.3.3 使用对象 16
2.4 在Java应用程式中使用矩形对象 16
2.5 Java应用程式的基本结构 17
2.6 一个源档案中编写多个类 19
2.7 标识符与关键字 20
2.7.1 标识符 20
2.7.2 关键字 20
2.8 简单数据类型 20
2.8.1 逻辑类型 21
2.8.2 整数类型 21
2.8.3 字元类型 22
2.8.4 浮点类型 23
2.9 简单数据类型的级别与数据转换 24
2.10 从命令行视窗输入、输出数据 25
2.10.1 输入基本型数据 25
2.10.2 输出基本型数据 26
2.11 编成风格 27
2.11.1 Allmans风格 27
2.11.2 Kernighan风格 27
2.11.3 注释 28
习题2 28
2.1 问题的提出 13
2.2 简单的矩形类 14
2.3 使用矩形类创建对象 15
2.3.1 用类声明对象 15
2.3.2 为对象分配变数 15
2.3.3 使用对象 16
2.4 在Java应用程式中使用矩形对象 16
2.5 Java应用程式的基本结构 17
2.6 一个源档案中编写多个类 19
2.7 标识符与关键字 20
2.7.1 标识符 20
2.7.2 关键字 20
2.8 简单数据类型 20
2.8.1 逻辑类型 21
2.8.2 整数类型 21
2.8.3 字元类型 22
2.8.4 浮点类型 23
2.9 简单数据类型的级别与数据转换 24
2.10 从命令行视窗输入、输出数据 25
2.10.1 输入基本型数据 25
2.10.2 输出基本型数据 26
2.11 编成风格 27
2.11.1 Allmans风格 27
2.11.2 Kernighan风格 27
2.11.3 注释 28
习题2 28
第3章 运算符、表达式和语句 30
3.1 运算符与表达式 30
3.1.1 算术运算符与算术表达式 30
3.1.2 自增,自减运算符 30
3.1.3 算术混合运算的精度 31
3.1.4 关係运算符与关係表达式 31
3.1.5 逻辑运算符与逻辑表达式 31
3.1.6 赋值运算符与赋值表达式 32
3.1.7 位运算符 32
3.1.8 instanceof运算符 33
3.1.9 运算符综述 33
3.2 语句概述 34
3.3 if条件分支语句 34
3.3.1 if语句 34
3.3.2 if-else语句 35
3.3.3 if-else if-else语句 35
3.4 switch开关语句 37
3.5 循环语句 39
3.5.1 for循环语句 39
3.5.2 while循环 40
3.5.3 do-while循环 40
3.6 break和continue语句 41
习题3 42
3.1 运算符与表达式 30
3.1.1 算术运算符与算术表达式 30
3.1.2 自增,自减运算符 30
3.1.3 算术混合运算的精度 31
3.1.4 关係运算符与关係表达式 31
3.1.5 逻辑运算符与逻辑表达式 31
3.1.6 赋值运算符与赋值表达式 32
3.1.7 位运算符 32
3.1.8 instanceof运算符 33
3.1.9 运算符综述 33
3.2 语句概述 34
3.3 if条件分支语句 34
3.3.1 if语句 34
3.3.2 if-else语句 35
3.3.3 if-else if-else语句 35
3.4 switch开关语句 37
3.5 循环语句 39
3.5.1 for循环语句 39
3.5.2 while循环 40
3.5.3 do-while循环 40
3.6 break和continue语句 41
习题3 42
第4章 类与对象 44
4.1 从抽象到类 44
4.2 类 45
4.2.1 类声明 45
4.2.2 类体 45
4.2.3 成员变数 46
4.2.4 方法 47
4.2.5 需要注意的问题 49
4.2.6 类的UML类图 49
4.3 构造方法与对象的创建 49
4.3.1 构造方法 50
4.3.2 创建对象 50
4.3.3 使用对象 52
4.3.4 对象的引用和实体 53
4.4 参数传值 55
4.4.1 传值机制 55
4.4.2 基本数据类型参数的传值 55
4.4.3 引用类型参数的传值 56
4.4.4 可变参数 58
4.5 有理数的类封装 59
4.6 对象的组合 62
4.6.1 圆锥体 62
4.6.2 关联关係和依赖关係的UML图 63
4.7 实例成员与类成员 64
4.7.1 实例变数和类变数的声明 64
4.7.2 实例变数和类变数的区别 64
4.7.3 实例方法和类方法的定义 66
4.7.4 实例方法和类方法的区别 66
4.8 方法重载与多态 67
4.9 this关键字 69
4.10 包 69
4.10.1 包语句 70
4.10.2 有包名的类的存储目录 70
4.10.3 运行有包名的主类 70
4.11 import语句 72
4.11.1 引入类库中的类 72
4.11.2 引入自定义包中的类 73
4.11.3 使用无包名的类 75
4.11.4 避免类名混淆 75
4.12 访问许可权 76
4.12.1 何谓访问许可权 76
4.12.2 私有变数和私有方法 76
4.12.3 共有变数和共有方法 77
4.12.4 友好变数和友好方法 78
4.12.5 受保护的成员变数和方法 78
4.12.6 public类与友好类 79
4.13 基本类型的类包装 79
4.13.1 Double和Float类 79
4.13.2 Byte、Short、Integer、Long类 80
4.13.3 Character类 80
4.14 反编译和文档生成器 80
4.14.1 javap反编译 80
4.14.2 javadoc製作文档 80
习题4 81
4.1 从抽象到类 44
4.2 类 45
4.2.1 类声明 45
4.2.2 类体 45
4.2.3 成员变数 46
4.2.4 方法 47
4.2.5 需要注意的问题 49
4.2.6 类的UML类图 49
4.3 构造方法与对象的创建 49
4.3.1 构造方法 50
4.3.2 创建对象 50
4.3.3 使用对象 52
4.3.4 对象的引用和实体 53
4.4 参数传值 55
4.4.1 传值机制 55
4.4.2 基本数据类型参数的传值 55
4.4.3 引用类型参数的传值 56
4.4.4 可变参数 58
4.5 有理数的类封装 59
4.6 对象的组合 62
4.6.1 圆锥体 62
4.6.2 关联关係和依赖关係的UML图 63
4.7 实例成员与类成员 64
4.7.1 实例变数和类变数的声明 64
4.7.2 实例变数和类变数的区别 64
4.7.3 实例方法和类方法的定义 66
4.7.4 实例方法和类方法的区别 66
4.8 方法重载与多态 67
4.9 this关键字 69
4.10 包 69
4.10.1 包语句 70
4.10.2 有包名的类的存储目录 70
4.10.3 运行有包名的主类 70
4.11 import语句 72
4.11.1 引入类库中的类 72
4.11.2 引入自定义包中的类 73
4.11.3 使用无包名的类 75
4.11.4 避免类名混淆 75
4.12 访问许可权 76
4.12.1 何谓访问许可权 76
4.12.2 私有变数和私有方法 76
4.12.3 共有变数和共有方法 77
4.12.4 友好变数和友好方法 78
4.12.5 受保护的成员变数和方法 78
4.12.6 public类与友好类 79
4.13 基本类型的类包装 79
4.13.1 Double和Float类 79
4.13.2 Byte、Short、Integer、Long类 80
4.13.3 Character类 80
4.14 反编译和文档生成器 80
4.14.1 javap反编译 80
4.14.2 javadoc製作文档 80
习题4 81
第5章 子类与继承 83
5.1 子类与父类 83
5.2 子类的继承性 84
5.2.1 子类和父类在同一包中的继承性 84
5.2.2 子类和父类不在同一包中的继承性 86
5.2.3 protected的进一步说明 86
5.2.4 继承关係的UML图 86
5.2.5 关于instanceof运算符 86
5.3 子类对象的特点 87
5.4 成员变数的隐藏和方法重写 88
5.4.1 成员变数的隐藏 88
5.4.2 方法重写 89
5.5 super关键字 94
5.5.1 用super操作被隐藏的成员变数和方法 94
5.5.2 使用super调用父类的构造方法 95
5.6 final关键字 97
5.6.1 final类 97
5.6.2 final方法 97
5.6.3 常量 97
5.7 对象的上转型对象 98
5.8 继承与多态 100
5.9 abstract类和abstract方法 101
5.10 面向抽象编程 102
5.11 开-闭原则 104
习题5 107
5.1 子类与父类 83
5.2 子类的继承性 84
5.2.1 子类和父类在同一包中的继承性 84
5.2.2 子类和父类不在同一包中的继承性 86
5.2.3 protected的进一步说明 86
5.2.4 继承关係的UML图 86
5.2.5 关于instanceof运算符 86
5.3 子类对象的特点 87
5.4 成员变数的隐藏和方法重写 88
5.4.1 成员变数的隐藏 88
5.4.2 方法重写 89
5.5 super关键字 94
5.5.1 用super操作被隐藏的成员变数和方法 94
5.5.2 使用super调用父类的构造方法 95
5.6 final关键字 97
5.6.1 final类 97
5.6.2 final方法 97
5.6.3 常量 97
5.7 对象的上转型对象 98
5.8 继承与多态 100
5.9 abstract类和abstract方法 101
5.10 面向抽象编程 102
5.11 开-闭原则 104
习题5 107
第6章 接口与多态 109
6.1 接口 109
6.1.1 接口的声明与使用 109
6.1.2 理解接口 112
6.1.3 接口的UML图 113
6.2 接口回调 114
6.2.1 接口变数与回调机制 114
6.2.2 接口的多态性 115
6.2.3 abstract类与接口的比较 116
6.3 面向接口编程 116
习题6 119
6.1 接口 109
6.1.1 接口的声明与使用 109
6.1.2 理解接口 112
6.1.3 接口的UML图 113
6.2 接口回调 114
6.2.1 接口变数与回调机制 114
6.2.2 接口的多态性 115
6.2.3 abstract类与接口的比较 116
6.3 面向接口编程 116
习题6 119
第7章 数组与枚举 121
7.1 创建数组 121
7.1.1 声明数组 121
7.1.2 为数组分配元素 122
7.1.3 数组元素的使用 123
7.1.4 length的使用 123
7.1.5 数组的初始化 124
7.1.6 数组的引用 124
7.2 遍历数组 125
7.2.1 基于循环语句的遍历 125
7.2.2 使用toString()方法遍历数组 126
7.3 複製数组 127
7.3.1 arraycopy方法 127
7.3.2 copyOf和copyOfRange()方法 128
7.4 排序与二分查找 129
7.5 枚举 130
7.5.1 枚举类型的定义 130
7.5.2 枚举变数 130
7.5.3 枚举类型与for语句和switch语句 131
习题7 132
7.1 创建数组 121
7.1.1 声明数组 121
7.1.2 为数组分配元素 122
7.1.3 数组元素的使用 123
7.1.4 length的使用 123
7.1.5 数组的初始化 124
7.1.6 数组的引用 124
7.2 遍历数组 125
7.2.1 基于循环语句的遍历 125
7.2.2 使用toString()方法遍历数组 126
7.3 複製数组 127
7.3.1 arraycopy方法 127
7.3.2 copyOf和copyOfRange()方法 128
7.4 排序与二分查找 129
7.5 枚举 130
7.5.1 枚举类型的定义 130
7.5.2 枚举变数 130
7.5.3 枚举类型与for语句和switch语句 131
习题7 132
第8章 内部类与异常类 134
8.1 内部类 134
8.2 匿名类 135
8.2.1 和子类有关的匿名类 135
8.2.2 和接口有关的匿名类 137
8.3 异常类 138
8.3.1 try~catch语句 138
8.3.2 自定义异常类 139
8.4 断言 141
习题8 142
8.1 内部类 134
8.2 匿名类 135
8.2.1 和子类有关的匿名类 135
8.2.2 和接口有关的匿名类 137
8.3 异常类 138
8.3.1 try~catch语句 138
8.3.2 自定义异常类 139
8.4 断言 141
习题8 142
第9章 常用实用类 144
9.1 String类 144
9.1.1 构造字元串对象 144
9.1.2 String 类的常用方法 145
9.1.3 字元串与基本数据的相互转化 149
9.1.4 对象的字元串表示 150
9.1.5 字元串与字元、位元组数组 151
9.1.6 正则表达式及字元串的替换与分解 153
9.2 StringBuffer类 157
9.2.1 StringBuffer对象的创建 157
9.2.2 StringBuffer类的常用方法 158
9.3 StringTokenizer类 159
9.4 Date类 160
9.4.1 构造Date对象 160
9.4.2 日期格式化 161
9.5 Calendar类 163
9.6 Math类和BigInteger类 165
9.6.1 Math类 165
9.6.2 BigInteger类 166
9.7 DecimalFormat类 167
9.7.1 格式化数字 167
9.7.2 将格式化字元串转化为数字 168
9.8 Pattern类与Match类 169
9.8.1 模式对象 170
9.8.2 匹配对象 170
9.9 Scanner类 171
9.10 System类 173
习题9 174
9.1 String类 144
9.1.1 构造字元串对象 144
9.1.2 String 类的常用方法 145
9.1.3 字元串与基本数据的相互转化 149
9.1.4 对象的字元串表示 150
9.1.5 字元串与字元、位元组数组 151
9.1.6 正则表达式及字元串的替换与分解 153
9.2 StringBuffer类 157
9.2.1 StringBuffer对象的创建 157
9.2.2 StringBuffer类的常用方法 158
9.3 StringTokenizer类 159
9.4 Date类 160
9.4.1 构造Date对象 160
9.4.2 日期格式化 161
9.5 Calendar类 163
9.6 Math类和BigInteger类 165
9.6.1 Math类 165
9.6.2 BigInteger类 166
9.7 DecimalFormat类 167
9.7.1 格式化数字 167
9.7.2 将格式化字元串转化为数字 168
9.8 Pattern类与Match类 169
9.8.1 模式对象 170
9.8.2 匹配对象 170
9.9 Scanner类 171
9.10 System类 173
习题9 174
第10章 输入、输出流 176
10.1 File类 177
10.1.1 档案的属性 177
10.1.2 目录 178
10.1.3 档案的创建与删除 179
10.1.4 运行执行档 179
10.2 位元组流与字元流 180
10.2.1 InputStream类与OutputSream类 180
10.2.2 Reader类与Writer类 181
10.2.3 关闭流 181
10.3 档案位元组流 181
10.3.1 档案位元组输入流 182
10.3.2 档案位元组输出流 183
10.4 档案字元流 183
10.5 缓冲流 184
10.6 随机流 186
10.7 数组流 189
10.8 数据流 190
10.9 对象流 193
10.10 序列化与对象克隆 195
10.11 档案锁 196
10.12 使用Scanner解析档案 197
10.13 使用Console流读取密码 199
习题10 200
10.1 File类 177
10.1.1 档案的属性 177
10.1.2 目录 178
10.1.3 档案的创建与删除 179
10.1.4 运行执行档 179
10.2 位元组流与字元流 180
10.2.1 InputStream类与OutputSream类 180
10.2.2 Reader类与Writer类 181
10.2.3 关闭流 181
10.3 档案位元组流 181
10.3.1 档案位元组输入流 182
10.3.2 档案位元组输出流 183
10.4 档案字元流 183
10.5 缓冲流 184
10.6 随机流 186
10.7 数组流 189
10.8 数据流 190
10.9 对象流 193
10.10 序列化与对象克隆 195
10.11 档案锁 196
10.12 使用Scanner解析档案 197
10.13 使用Console流读取密码 199
习题10 200
第11章 JDBC资料库操作 202
11.1 Microsoft Access资料库管理系统 202
11.1.1 建立资料库 203
11.1.2 创建表 203
11.2 JDBC 204
11.3 连线资料库 204
11.3.1 连线方式的选择 204
11.3.2 建立JDBC-ODBC桥接器 205
11.3.3 ODBC数据源 205
11.3.4 建立连线 206
11.4 查询操作 208
11.4.1 顺序查询 209
11.4.2 控制游标 211
11.4.3 条件查询 213
11.4.4 排序查询 213
11.4.5 模糊查询 214
11.5 更新、添加与删除操作 215
11.6 使用预处理语句 216
11.6.1 预处理语句优点 216
11.6.2 使用通配符 218
11.7 事务 221
11.7.1 事务及处理 221
11.7.2 JDBC事务处理步骤 221
11.8 批处理 222
11.9 CachedRowSetImpl类 223
习题11 226
11.1 Microsoft Access资料库管理系统 202
11.1.1 建立资料库 203
11.1.2 创建表 203
11.2 JDBC 204
11.3 连线资料库 204
11.3.1 连线方式的选择 204
11.3.2 建立JDBC-ODBC桥接器 205
11.3.3 ODBC数据源 205
11.3.4 建立连线 206
11.4 查询操作 208
11.4.1 顺序查询 209
11.4.2 控制游标 211
11.4.3 条件查询 213
11.4.4 排序查询 213
11.4.5 模糊查询 214
11.5 更新、添加与删除操作 215
11.6 使用预处理语句 216
11.6.1 预处理语句优点 216
11.6.2 使用通配符 218
11.7 事务 221
11.7.1 事务及处理 221
11.7.2 JDBC事务处理步骤 221
11.8 批处理 222
11.9 CachedRowSetImpl类 223
习题11 226
第12章 泛型与集合框架 227
12.1 泛型 227
12.1.1 泛型类 228
12.1.2 泛型类声明对象 228
12.1.3 泛型接口 229
12.1.4 泛型的目的 230
12.2 鍊表 230
12.2.1 LinkedList<E>泛型类 230
12.2.2 常用方法 231
12.2.3 遍历鍊表 231
12.2.4 排序与查找 233
12.2.5 洗牌与旋转 235
12.3 堆叠 237
12.4 散列映射 238
12.4.1 HashMap<K,V>泛型类 238
12.4.2 常用方法 239
12.4.3 遍历散列映射 239
12.4.4 基于散列映射的查询 239
12.5 树集 241
12.5.1 TreeSet<E>泛型类 241
12.5.2 节点的大小关係 241
12.5.3 TreeSet类的常用方法 241
12.6 树映射 243
12.7 自动装箱与拆箱 244
习题12 245
12.1 泛型 227
12.1.1 泛型类 228
12.1.2 泛型类声明对象 228
12.1.3 泛型接口 229
12.1.4 泛型的目的 230
12.2 鍊表 230
12.2.1 LinkedList<E>泛型类 230
12.2.2 常用方法 231
12.2.3 遍历鍊表 231
12.2.4 排序与查找 233
12.2.5 洗牌与旋转 235
12.3 堆叠 237
12.4 散列映射 238
12.4.1 HashMap<K,V>泛型类 238
12.4.2 常用方法 239
12.4.3 遍历散列映射 239
12.4.4 基于散列映射的查询 239
12.5 树集 241
12.5.1 TreeSet<E>泛型类 241
12.5.2 节点的大小关係 241
12.5.3 TreeSet类的常用方法 241
12.6 树映射 243
12.7 自动装箱与拆箱 244
习题12 245
第13章 Java多执行绪机制 246
13.1 进程与执行绪 246
13.1.1 作业系统与进程 246
13.1.2 进程与执行绪 247
13.2 Java中的执行绪 247
13.2.1 Java的多执行绪机制 247
13.2.2 执行绪的状态与生命周期 248
13.2.3 执行绪调度与优先权 251
13.3 Thread的子类创建执行绪 251
13.4 使用Runnable接口 253
13.4.1 Runnable接口与目标对象 253
13.4.2 关于run方法启动的次数 254
13.4.3 线上程中启动其他执行绪 255
13.5 执行绪的常用方法 256
13.6 执行绪同步 259
13.6.1 什幺是执行绪同步 259
13.6.2 通过同步避免切换的影响 261
13.7 在同步方法中使用wait()、notify()和notifyAll()方法 263
13.8 执行绪联合 264
习题13 265
13.1 进程与执行绪 246
13.1.1 作业系统与进程 246
13.1.2 进程与执行绪 247
13.2 Java中的执行绪 247
13.2.1 Java的多执行绪机制 247
13.2.2 执行绪的状态与生命周期 248
13.2.3 执行绪调度与优先权 251
13.3 Thread的子类创建执行绪 251
13.4 使用Runnable接口 253
13.4.1 Runnable接口与目标对象 253
13.4.2 关于run方法启动的次数 254
13.4.3 线上程中启动其他执行绪 255
13.5 执行绪的常用方法 256
13.6 执行绪同步 259
13.6.1 什幺是执行绪同步 259
13.6.2 通过同步避免切换的影响 261
13.7 在同步方法中使用wait()、notify()和notifyAll()方法 263
13.8 执行绪联合 264
习题13 265
第14章 Java网路编程 268
14.1 URL类 268
14.1.1 URL的构造方法 269
14.1.2 读取URL中的资源 269
14.2 InetAdress类 270
14.2.1 地址的表示 270
14.2.2 获取地址 271
14.3 套接字 271
14.3.1 套接字 271
14.3.2 客户端套接字 272
14.3.3 ServerSocket对象与伺服器端套接字 272
14.3.4 使用多执行绪技术 275
14.4 UDP数据包 278
14.4.1 传送数据包 279
14.4.2 接收数据包 279
14.5 广播数据包 282
14.6 Java远程调用 284
14.6.1 远程对象及其代理 285
14.6.2 RMI的设计细节 285
习题14 288
14.1 URL类 268
14.1.1 URL的构造方法 269
14.1.2 读取URL中的资源 269
14.2 InetAdress类 270
14.2.1 地址的表示 270
14.2.2 获取地址 271
14.3 套接字 271
14.3.1 套接字 271
14.3.2 客户端套接字 272
14.3.3 ServerSocket对象与伺服器端套接字 272
14.3.4 使用多执行绪技术 275
14.4 UDP数据包 278
14.4.1 传送数据包 279
14.4.2 接收数据包 279
14.5 广播数据包 282
14.6 Java远程调用 284
14.6.1 远程对象及其代理 285
14.6.2 RMI的设计细节 285
习题14 288
第15章 图形用户界面设计 289
15.1 Java Swing概述 289
15.2 视窗 290
15.2.1 JFrame常用方法 291
15.2.2 选单条、选单、选单项 292
15.3 常用组件与布局 293
15.3.1 常用组件 293
15.3.2 常用容器 295
15.3.3 常用布局 296
15.4 处理事件 301
15.4.1 事件处理模式 301
15.4.2 ActionEvent事件 302
15.4.3 ItemEvent事件 306
15.4.4 DocumentEvent事件 308
15.4.5 MouseEvent事件 310
15.4.6 焦点事件 314
15.4.7 键盘事件 314
15.4.8 匿名类实例或视窗做监视器 317
15.4.9 事件总结 319
15.5 使用MVC结构 319
15.6 对话框 322
15.6.1 讯息对话框 322
15.6.2 输入对话框 323
15.6.3 确认对话框 325
15.6.4 颜色对话框 326
15.6.5 档案对话框 327
15.6.6 自定义对话框 330
15.7 发布GUI程式 331
习题15 332
15.1 Java Swing概述 289
15.2 视窗 290
15.2.1 JFrame常用方法 291
15.2.2 选单条、选单、选单项 292
15.3 常用组件与布局 293
15.3.1 常用组件 293
15.3.2 常用容器 295
15.3.3 常用布局 296
15.4 处理事件 301
15.4.1 事件处理模式 301
15.4.2 ActionEvent事件 302
15.4.3 ItemEvent事件 306
15.4.4 DocumentEvent事件 308
15.4.5 MouseEvent事件 310
15.4.6 焦点事件 314
15.4.7 键盘事件 314
15.4.8 匿名类实例或视窗做监视器 317
15.4.9 事件总结 319
15.5 使用MVC结构 319
15.6 对话框 322
15.6.1 讯息对话框 322
15.6.2 输入对话框 323
15.6.3 确认对话框 325
15.6.4 颜色对话框 326
15.6.5 档案对话框 327
15.6.6 自定义对话框 330
15.7 发布GUI程式 331
习题15 332
第16章 Java Applet程式 333
16.1 Java Applet的结构 333
16.2 Java Applet的运行原理 334
16.3 在Java Applet中播放声音 336
16.4 网页传值 338
习题16 338
16.1 Java Applet的结构 333
16.2 Java Applet的运行原理 334
16.3 在Java Applet中播放声音 336
16.4 网页传值 338
习题16 338