简介
本书是一本全面介绍Java语言特点及应用技术的实用书籍。书中内容详实严谨、深入浅出、概念清楚。以Java 2基础程序设计、面向对象程序设计与窗口程序设计为三大主轴,利用浅显易懂的语言,丰富简单的实现范例,完整地介绍了Java 2面向对象程序设计的要点难点!Java的运算符、表达式与语句、循环与选择性程序结构、数组与函数、类与类库、继承、异常处理、多线程、文件处理与事件处理等在本书中都有详尽的介绍说明。
全书共分19章。第1章到第6章介绍了Java语言规范、基本功能及特点。第7章到第18章介绍了Java语言面向对象的概念和方法,Java语言面向对象的特性。第19章简要地介绍了Applet程序的概念及简单应用。该书既适合于初学者又可作为广大计算机技术人员的自学参考用书。
书后有中英文索引。
随书配有光盘一张,内附书中范例程序的源代码及习题答案。
本书由台湾博硕文化股份有限公司提供版权,中国铁道出版社计算机图书项目中心审选;彭吉梅、王洋、张强、孟伟、马超、廖康良、陈贤淑、孟丽花等同志完成了本书的整稿及排版工作。
目录
第1章 认识java 1
1-1 历史的回顾 2
1-1-1 java的发展过程 2
1-1-2 java的发展史 2
1-2 java的虚拟机 3
1-3 java的未来发展 4
1-4 编写第一个java程序 5
1-4-1 编译与执行java application 5
1-4-2 编译与执行java applet 7
本章摘要 10
自我考评 11
第2章 简单的java程序 13
2-1 一个简单的例子 14
2-2 简单的java程序解析 16
2-2-1 类(class) 16
2-2-2 大括号、段及主体 16
2-2-3 程序执行的起始点-main() method 17
2-2-4 变量 18
2-2-5 变量的设置 18
2-2-6 为什么要声明变量 19
.2-2-7 println() 19
2-3 再看一个例子:有参数的情形 20
2-4 标识符及关键字 21
2-4-1 标识符 21
2-4-2 关键字 21
2-5 检测 22
2-5-1 语法错误 22
2-5-2 语义错误 22
2-6 提高程序的可读性 23
本章摘要 25
自我考评 25
第3章 变量与数据类型 29
3-1 变量与常量 30
3-2 基本数据类型 31
3-2-1 整数类型 31
3-2-2 字符类型 36
3-2-3 浮点数类型与倍精度浮点数类型 38
3-2-4 布尔类型 39
3-2-5 基本数据类型的默认值 40
3-3 数据类型的转换 41
3-3-1 自动类型转换 41
3-3-2 强制类型转换 42
3-4 由键盘输入数据 43
3-4-1 输入字符串 44
3-4-2 输入数值 44
3-4-3 输入多个数据 46
本章摘要 47
自我考评 47
第4章 运算符、表达式与语句 51
4-1 表达式与运算符 52
4-1-1 赋值运算符 52
4-1-2 一元运算符 53
4-1-3 算术运算符 54
4-1-4 关系运算符与if语句 57
4-1-5 递增与递减运算符 58
4-1-6 逻辑运算符 59
4-1-7 括号运算符 61
4-2 运算符的优先级 61
4-3 表达式 62
4-4 表达式的类型转换 64
本章摘要 66
自我考评 66
第5章 循环与选择性语句 69
5-1 程序的结构设计 70
5-1-1 循环结构 70
5-1-2 选择结构 70
5-1-3 重复结构 71
5-2 循环 72
5-2-1 for循环 72
5-2-2 while循环 74
5-2-3 do while循环 75
5-2-4 嵌套循环 78
5-3 循环的跳离 79
5-3-1 break语句 79
5-3-2 continue语句 80
5-4 我的程序会转弯--选择语句 82
5-4-1 if语句 82
5-4-2 if-else语句 82
5-4-3 if的简洁版--条件运算符 84
5-5 更好用的多重选择--switch语句 85
5-6 局部变量 87
本章摘要 88
自我考评 88
第6章 数组与函数 93
6-1 一维数组 94
6-1-1 一维数组的声明与内存的分配 94
6-1-2 数组中元素的表示方法 95
6-1-3 数组初值的赋值 97
6-1-4 简单的范例:找出数组元素的最大值与最小值 98
6-2 二维数组 99
6-2-1 二维数组的声明与分配内存 99
6-2-2 二维数组元素的引用及访问 101
6-3 三维以上的多维数组 102
6-4 函数 103
6-4-1 简单的范例 104
6-4-2 method的变量与返回值 105
6-4-3 将数组传递到method里 106
6-4-4 递归method 109
本章摘要 110
自我考评 111
第7章 类的基本架构 115
7-1 认识类 116
7-1-1 类的基本概念 116
7-1-2 类的声明 117
7-1-3 创建新的对象 118
7-1-4 使用类来设计完整的程序 120
7-1-5 同时创建多个对象 121
7-2 有关method的使用 122
7-2-1 定义与使用method 123
7-2-2 再看一个简单的范例 124
7-2-3 数据成员的访问方式 126
7-2-4 在类定义的内部调用method 128
7-3 参数的传递 129
7-3-1 调用method并传递参数 129
7-3-2 传递多个参数 131
7-4 method 的返回值 132
7-4-1 没有返回值的method 132
7-4-2 有返回值的method 133
7-5 公有成员与私有成员 134
7-5-1 创建私有成员 135
7-5-2 创建公有成员 136
7-5-3 数据的封装 138
7-5-4 省略public与private 138
本章摘要 138
自我考评 139
第8章 类的其他功能 143
8-1 函数成员(method)的重载 144
8-1-1 重载 144
8-1-2 使用重载常犯的错误 147
8-2 构造函数 148
8-2-1 构造函数的基本认识 148
8-2-2 构造函数的调用时机 148
8-2-3 构造函数的重载 149
8-2-4 从某一构造函数调用另一构造函数 151
8-2-5 构造函数的公有与私有 152
8-2-6 构造函数的省略 154
8-3 类变量与类方法 154
8-3-1 实例变量与实例方法 154
8-3-2 类变量(class variable) 156
8-3-3 类方法 158
8-3-4 "类方法"使用的限制 160
8-4 类类型的变量 161
8-4-1 赋值给类类型的变量 162
8-4-2 以类类型的变量传递参数 164
8-4-3 由method返回类类型的变量 165
8-4-4 释放内存 166
8-5 利用数组来保存对象 167
8-5-1 创建对象数组的范例 168
8-5-2 传递对象数组到method里 169
8-6 内部类 171
8-6-1 内部类的编写 171
8-6-2 匿名内部类 174
本章摘要 175
自我考评 176
第9章 继承 179
9-1 继承的基本概念 180
9-1-1 简单的继承范例 180
9-1-2 调用父类中特定的构造函数 183
9-1-3 使用构造函数常见的错误 185
9-2 由子类访问父类的成员 187
9-3 覆盖 189
9-3-1 覆盖父类的method 189
9-3-2 以父类的变量访问子类的成员 190
9-4 再谈super()与this() 192
9-5 赋值终止继承 194
9-6 类之源--object类 195
本章摘要 199
自我考评 200
第10章 抽象类与接口 203
10-1 抽象类 204
10-1-1 定义抽象类 204
10-1-2 抽象类的实现 204
10-1-3 用抽象类类型的变量来创建对象 208
10-1-4 使用抽象类的注意事项 209
10-2 接口的使用 209
10-3 多重继承 213
10-4 接口的扩展 215
本章摘要 417
自我考评 218
第11章 大型程序的发展 223
11-1 文件的分割 224
11-2 使用package 225
11-2-1 package的基本概念 225
11-2-2 将独立分开的类纳入同一个package中 227
11-3 访问在不同package里的类 228
11-3-1 简单的范例 229
11-3-2 public, private与protected修饰符的角色 230
11-3-3 导入packages 231
11-4 构造package的层次关系 232
11-5 java常用的类库 234
11-5-1 有关字符串的类库 237
11-5-2 stringbuffer类库 239
11-5-3 wrapper class 240
11-5-4 使用math类 241
本章摘要 243
自我考评 243
第12章 异常处理 245
12-1 异常的基本概念 246
12-1-1 为何需要异常处理? 246
12-1-2 简单的异常范例 246
12-1-3 异常的处理 247
12-1-4 异常处理机制的回顾 250
12-2 异常类的继承架构 250
12-3 抛出异常 252
12-3-1 在程序中抛出异常 252
12-3-2 指定method抛出异常 253
12-4 自己编写异常类 255
12-5 回顾ioexception异常类 257
本章摘要 258
自我考评 259
第13章 文件处理 261
13-1 关于流 262
13-2 使用reader与writer类 263
13-2-1 文件的读取--使用filereader类 264
13-2-2 文件的写入--使用filewriter类 266
13-2-3 文件的读取--使用bufferedreader类 267
13-2-4 文件的读取--使用bufferedwriter类 268
13-3 使用inputstream与outputstream类 270
13-3-1 文件的写入--使用fileinputstream类 270
13-3-2 文件的写入--使用fileoutputstraem类 271
本章摘要 273
自我考评 273
第14章 多线程 277
14-1 认识线程 278
14-2 用runnable接口来创建线程 281
14-3 线程的管理 282
14-3-1 线程的生命周期 283
14-3-2 让线程小睡片刻 284
14-3-3 等待线程 285
14-4 同步处理 287
本章摘要 290
自我考评 290
第15章 awt窗口对象 293
15-1 认识awt类 294
15-1-1 简单的范例 294
15-1-2 窗口对象的类简介 298
15-2 创建窗口 301
15-3 创建标签 303
15-4 创建按钮 306
15-5 创建复选框 308
15-6 创建文字输入组件 310
15-6-1 用textfield创建文本框 311
15-6-2 用textarea创建文本区 313
15-7 页面设置与管理 315
15-7-1 使用borderlayout类 315
15-7-2 使用cardlayout类 317
15-7-3 使用flowlayout类 318
15-7-4 使用gridlayout类 320
15-8 使用panel面板 321
本章摘要 323
自我考评 324
第16章 事件处理 327
16-1 委派事件模型 328
16-1-1 简单的范例 328
16-1-2 定义内部类当成聆听者 331
16-2 认识事件处理类 332
16-3 使用actionevent类 335
16-4 使用itemevent类 337
16-5 文本事件的处理--textevent类 339
16-6 按键事件的处理--keyevent类 340
16-6-1 以keylistener接口处理keyevent事件 341
16-6-2 以keyadapter类事件处理keyevent事件 343
16-7 鼠标事件的处理--mouseevent类 344
16-7-1 以mouselistener接口处理mouseevent事件 345
16-7-2 以mousemotionlistener接口处理mouseevent事件 347
16-7-3 以mouseadapter类事件处理mouseevent事件 349
16-8 窗口事件的处理--windowevent类 350
本章摘要 352
自我考评 353
第17章 菜单,菜单栏与滚动条 357
17-1 选择窗体 358
17-1-1 用list类创建选择窗体 358
17-1-2 选择窗体的事件处理 360
17-2 下拉菜单 361
17-2-1 用choice类创建下拉菜单 362
17-2-2 下拉菜单的事件处理 363
17-3 菜单栏 364
17-3-1 创建菜单栏 366
17-3-2 菜单栏的事件处理 367
17-4 滚动条 368
17-5 对话框 371
17-6 文件对话框 374
本章摘要 377
自我考评 377
第18章 awt的绘图 381
18-1 绘图概述 382
18-1-1 坐标系统 382
18-1-2 graphics类 382
18-2 设置颜色与字体 388
18-2-1 设置颜色 388
18-2-2 设置字体 391
18-3 graphics类 393
本章摘要 404
自我考评 404
第19章 网页的向导-applet 407
19-1 applet概述 408
19-1-1 简单的java applet 408
19-1-2 applet类 410
19-1-3 使用html的<applet>标记
19-2 applet的执行程序
19-3 装扮applet窗口
19-3-1 加入awt组件到applet里
19-3-2 在applet窗口内用鼠标绘出圆形
19-4 加载影像与简单的动画制作
19-4-1 加载与显示影像
19-4-2 移动影像
19-5 播放音乐文件
本章摘要
自我考评
附录a 下载与安装jdk1.4
a-1 jdk的下载与安装
a-1-1 下载jdk
a-1-2 安装jdk
a-1-3 设置jdk的操作环境
a-2 jdk参考文件下载与安装
a-2-l 下载jdk参考文件
a-2-2 安装jdk参考文件
附录b jcreator l-e的使用
b-1 jcreatorle的下载与安装
b-1-1 下载jcreatorle
b-l-2 安装jcreatorle
b-2 首次激活jcreatorle时的设置
b-3 jcreatorle的使用
b-3-1 jcreatorle的使用设置
b-3-2 编写、编译与运行java spplication
b-3-3 编译与运行有参数的javaapplication
b-3-4 编译与运行java applet
b-4 jcreatorle其他的功能
附录c ascil码表
中文索引
英文索引
1-1 历史的回顾 2
1-1-1 java的发展过程 2
1-1-2 java的发展史 2
1-2 java的虚拟机 3
1-3 java的未来发展 4
1-4 编写第一个java程序 5
1-4-1 编译与执行java application 5
1-4-2 编译与执行java applet 7
本章摘要 10
自我考评 11
第2章 简单的java程序 13
2-1 一个简单的例子 14
2-2 简单的java程序解析 16
2-2-1 类(class) 16
2-2-2 大括号、段及主体 16
2-2-3 程序执行的起始点-main() method 17
2-2-4 变量 18
2-2-5 变量的设置 18
2-2-6 为什么要声明变量 19
.2-2-7 println() 19
2-3 再看一个例子:有参数的情形 20
2-4 标识符及关键字 21
2-4-1 标识符 21
2-4-2 关键字 21
2-5 检测 22
2-5-1 语法错误 22
2-5-2 语义错误 22
2-6 提高程序的可读性 23
本章摘要 25
自我考评 25
第3章 变量与数据类型 29
3-1 变量与常量 30
3-2 基本数据类型 31
3-2-1 整数类型 31
3-2-2 字符类型 36
3-2-3 浮点数类型与倍精度浮点数类型 38
3-2-4 布尔类型 39
3-2-5 基本数据类型的默认值 40
3-3 数据类型的转换 41
3-3-1 自动类型转换 41
3-3-2 强制类型转换 42
3-4 由键盘输入数据 43
3-4-1 输入字符串 44
3-4-2 输入数值 44
3-4-3 输入多个数据 46
本章摘要 47
自我考评 47
第4章 运算符、表达式与语句 51
4-1 表达式与运算符 52
4-1-1 赋值运算符 52
4-1-2 一元运算符 53
4-1-3 算术运算符 54
4-1-4 关系运算符与if语句 57
4-1-5 递增与递减运算符 58
4-1-6 逻辑运算符 59
4-1-7 括号运算符 61
4-2 运算符的优先级 61
4-3 表达式 62
4-4 表达式的类型转换 64
本章摘要 66
自我考评 66
第5章 循环与选择性语句 69
5-1 程序的结构设计 70
5-1-1 循环结构 70
5-1-2 选择结构 70
5-1-3 重复结构 71
5-2 循环 72
5-2-1 for循环 72
5-2-2 while循环 74
5-2-3 do while循环 75
5-2-4 嵌套循环 78
5-3 循环的跳离 79
5-3-1 break语句 79
5-3-2 continue语句 80
5-4 我的程序会转弯--选择语句 82
5-4-1 if语句 82
5-4-2 if-else语句 82
5-4-3 if的简洁版--条件运算符 84
5-5 更好用的多重选择--switch语句 85
5-6 局部变量 87
本章摘要 88
自我考评 88
第6章 数组与函数 93
6-1 一维数组 94
6-1-1 一维数组的声明与内存的分配 94
6-1-2 数组中元素的表示方法 95
6-1-3 数组初值的赋值 97
6-1-4 简单的范例:找出数组元素的最大值与最小值 98
6-2 二维数组 99
6-2-1 二维数组的声明与分配内存 99
6-2-2 二维数组元素的引用及访问 101
6-3 三维以上的多维数组 102
6-4 函数 103
6-4-1 简单的范例 104
6-4-2 method的变量与返回值 105
6-4-3 将数组传递到method里 106
6-4-4 递归method 109
本章摘要 110
自我考评 111
第7章 类的基本架构 115
7-1 认识类 116
7-1-1 类的基本概念 116
7-1-2 类的声明 117
7-1-3 创建新的对象 118
7-1-4 使用类来设计完整的程序 120
7-1-5 同时创建多个对象 121
7-2 有关method的使用 122
7-2-1 定义与使用method 123
7-2-2 再看一个简单的范例 124
7-2-3 数据成员的访问方式 126
7-2-4 在类定义的内部调用method 128
7-3 参数的传递 129
7-3-1 调用method并传递参数 129
7-3-2 传递多个参数 131
7-4 method 的返回值 132
7-4-1 没有返回值的method 132
7-4-2 有返回值的method 133
7-5 公有成员与私有成员 134
7-5-1 创建私有成员 135
7-5-2 创建公有成员 136
7-5-3 数据的封装 138
7-5-4 省略public与private 138
本章摘要 138
自我考评 139
第8章 类的其他功能 143
8-1 函数成员(method)的重载 144
8-1-1 重载 144
8-1-2 使用重载常犯的错误 147
8-2 构造函数 148
8-2-1 构造函数的基本认识 148
8-2-2 构造函数的调用时机 148
8-2-3 构造函数的重载 149
8-2-4 从某一构造函数调用另一构造函数 151
8-2-5 构造函数的公有与私有 152
8-2-6 构造函数的省略 154
8-3 类变量与类方法 154
8-3-1 实例变量与实例方法 154
8-3-2 类变量(class variable) 156
8-3-3 类方法 158
8-3-4 "类方法"使用的限制 160
8-4 类类型的变量 161
8-4-1 赋值给类类型的变量 162
8-4-2 以类类型的变量传递参数 164
8-4-3 由method返回类类型的变量 165
8-4-4 释放内存 166
8-5 利用数组来保存对象 167
8-5-1 创建对象数组的范例 168
8-5-2 传递对象数组到method里 169
8-6 内部类 171
8-6-1 内部类的编写 171
8-6-2 匿名内部类 174
本章摘要 175
自我考评 176
第9章 继承 179
9-1 继承的基本概念 180
9-1-1 简单的继承范例 180
9-1-2 调用父类中特定的构造函数 183
9-1-3 使用构造函数常见的错误 185
9-2 由子类访问父类的成员 187
9-3 覆盖 189
9-3-1 覆盖父类的method 189
9-3-2 以父类的变量访问子类的成员 190
9-4 再谈super()与this() 192
9-5 赋值终止继承 194
9-6 类之源--object类 195
本章摘要 199
自我考评 200
第10章 抽象类与接口 203
10-1 抽象类 204
10-1-1 定义抽象类 204
10-1-2 抽象类的实现 204
10-1-3 用抽象类类型的变量来创建对象 208
10-1-4 使用抽象类的注意事项 209
10-2 接口的使用 209
10-3 多重继承 213
10-4 接口的扩展 215
本章摘要 417
自我考评 218
第11章 大型程序的发展 223
11-1 文件的分割 224
11-2 使用package 225
11-2-1 package的基本概念 225
11-2-2 将独立分开的类纳入同一个package中 227
11-3 访问在不同package里的类 228
11-3-1 简单的范例 229
11-3-2 public, private与protected修饰符的角色 230
11-3-3 导入packages 231
11-4 构造package的层次关系 232
11-5 java常用的类库 234
11-5-1 有关字符串的类库 237
11-5-2 stringbuffer类库 239
11-5-3 wrapper class 240
11-5-4 使用math类 241
本章摘要 243
自我考评 243
第12章 异常处理 245
12-1 异常的基本概念 246
12-1-1 为何需要异常处理? 246
12-1-2 简单的异常范例 246
12-1-3 异常的处理 247
12-1-4 异常处理机制的回顾 250
12-2 异常类的继承架构 250
12-3 抛出异常 252
12-3-1 在程序中抛出异常 252
12-3-2 指定method抛出异常 253
12-4 自己编写异常类 255
12-5 回顾ioexception异常类 257
本章摘要 258
自我考评 259
第13章 文件处理 261
13-1 关于流 262
13-2 使用reader与writer类 263
13-2-1 文件的读取--使用filereader类 264
13-2-2 文件的写入--使用filewriter类 266
13-2-3 文件的读取--使用bufferedreader类 267
13-2-4 文件的读取--使用bufferedwriter类 268
13-3 使用inputstream与outputstream类 270
13-3-1 文件的写入--使用fileinputstream类 270
13-3-2 文件的写入--使用fileoutputstraem类 271
本章摘要 273
自我考评 273
第14章 多线程 277
14-1 认识线程 278
14-2 用runnable接口来创建线程 281
14-3 线程的管理 282
14-3-1 线程的生命周期 283
14-3-2 让线程小睡片刻 284
14-3-3 等待线程 285
14-4 同步处理 287
本章摘要 290
自我考评 290
第15章 awt窗口对象 293
15-1 认识awt类 294
15-1-1 简单的范例 294
15-1-2 窗口对象的类简介 298
15-2 创建窗口 301
15-3 创建标签 303
15-4 创建按钮 306
15-5 创建复选框 308
15-6 创建文字输入组件 310
15-6-1 用textfield创建文本框 311
15-6-2 用textarea创建文本区 313
15-7 页面设置与管理 315
15-7-1 使用borderlayout类 315
15-7-2 使用cardlayout类 317
15-7-3 使用flowlayout类 318
15-7-4 使用gridlayout类 320
15-8 使用panel面板 321
本章摘要 323
自我考评 324
第16章 事件处理 327
16-1 委派事件模型 328
16-1-1 简单的范例 328
16-1-2 定义内部类当成聆听者 331
16-2 认识事件处理类 332
16-3 使用actionevent类 335
16-4 使用itemevent类 337
16-5 文本事件的处理--textevent类 339
16-6 按键事件的处理--keyevent类 340
16-6-1 以keylistener接口处理keyevent事件 341
16-6-2 以keyadapter类事件处理keyevent事件 343
16-7 鼠标事件的处理--mouseevent类 344
16-7-1 以mouselistener接口处理mouseevent事件 345
16-7-2 以mousemotionlistener接口处理mouseevent事件 347
16-7-3 以mouseadapter类事件处理mouseevent事件 349
16-8 窗口事件的处理--windowevent类 350
本章摘要 352
自我考评 353
第17章 菜单,菜单栏与滚动条 357
17-1 选择窗体 358
17-1-1 用list类创建选择窗体 358
17-1-2 选择窗体的事件处理 360
17-2 下拉菜单 361
17-2-1 用choice类创建下拉菜单 362
17-2-2 下拉菜单的事件处理 363
17-3 菜单栏 364
17-3-1 创建菜单栏 366
17-3-2 菜单栏的事件处理 367
17-4 滚动条 368
17-5 对话框 371
17-6 文件对话框 374
本章摘要 377
自我考评 377
第18章 awt的绘图 381
18-1 绘图概述 382
18-1-1 坐标系统 382
18-1-2 graphics类 382
18-2 设置颜色与字体 388
18-2-1 设置颜色 388
18-2-2 设置字体 391
18-3 graphics类 393
本章摘要 404
自我考评 404
第19章 网页的向导-applet 407
19-1 applet概述 408
19-1-1 简单的java applet 408
19-1-2 applet类 410
19-1-3 使用html的<applet>标记
19-2 applet的执行程序
19-3 装扮applet窗口
19-3-1 加入awt组件到applet里
19-3-2 在applet窗口内用鼠标绘出圆形
19-4 加载影像与简单的动画制作
19-4-1 加载与显示影像
19-4-2 移动影像
19-5 播放音乐文件
本章摘要
自我考评
附录a 下载与安装jdk1.4
a-1 jdk的下载与安装
a-1-1 下载jdk
a-1-2 安装jdk
a-1-3 设置jdk的操作环境
a-2 jdk参考文件下载与安装
a-2-l 下载jdk参考文件
a-2-2 安装jdk参考文件
附录b jcreator l-e的使用
b-1 jcreatorle的下载与安装
b-1-1 下载jcreatorle
b-l-2 安装jcreatorle
b-2 首次激活jcreatorle时的设置
b-3 jcreatorle的使用
b-3-1 jcreatorle的使用设置
b-3-2 编写、编译与运行java spplication
b-3-3 编译与运行有参数的javaapplication
b-3-4 编译与运行java applet
b-4 jcreatorle其他的功能
附录c ascil码表
中文索引
英文索引
JAVA 2面向对象程序设计
光盘服务联系方式: 020-38250260 客服QQ:4006604884
云图客服:
用户发送的提问,这种方式就需要有位在线客服来回答用户的问题,这种 就属于对话式的,问题是这种提问是否需要用户登录才能提问
Video Player
×
Audio Player
×
pdf Player
×
亲爱的云图用户,
光盘内的文件都可以直接点击浏览哦
无需下载,在线查阅资料!