第一篇 Java语言规范 1
第1章 Java语言概述 1
1.1 Java语言发展简史 1
1.2 Java的特点 1
1.2.1 Java语言的特点 2
1.2.2 Java Applet(小应用程序)的特点 3
1.2.3 Java和c、c++的比较 3
1.3 Java程序举例 4
1.3.1 Java应用程序(Java Application) 4
1.3.2 Java 小应用程序(Java Applet) 5
第2章 简单数据类型 7
2.1 数据类型综述 7
2.2简单数据类型的实例化-变量与常量 7
2.2.1 标识符(Identifiers) 8
2.2.2 常量(Constant variables) 8
2.2.3变量(Variables) 8
2.3 整数类型 9
2.3.1 整型常量 9
2.3.2 整型变量 9
2.4 浮点型(实型)数据 10
2.4.1 实型常量 10
2.4.2 实型变量 11
2.5 字符类型 11
2.5.1 字符型常量 11
2.5.2 字符型变量 12
2.6 布尔类型 12
2.7 各类型数据间的优先关系和相互转换 12
2.7.1 数据类型的缺省值 12
2.7.2 自动类型转换 13
2.7.3 强制类型转换 13
第3章 运算符和表达式 14
3.1 运算符综述 14
3.2 算术运算符 14
3.3关系运算符 15
3.4 布尔逻辑运算符 15
3.5 位运算符 15
3.5.1 按位取反运算符(~) 16
3.5.2 按位与运算符(&) 16
3.5.3 按位或运算符(Ⅰ) 16
3.5.4 按位异或运算符(`) 16
3.5.5 左移运算符(<<) 16
3.5.6 右移运算符(>>) 16
3.5.7 无符号右移运算符(>>>) 16
3.5.8 不同长度的数据进行位运算 16
3.6 赋值运算符 17
3.6.1 赋值运算符(=) 17
3.6.2 扩展赋值运算符 17
3.7 条件运算符 18
3.8 表达式 18
第4章 控制语句 20
4.1 分支语句 20
4.1.1 条件语句(if-else) 20
4.1.2 多分支语句(switch) 21
4.1.3 break 语句 21
4.1.4 返回语句(return) 22
4.2 循环语句 23
4.2.1 while 语句 23
4.2.2 do-while 语句 23
4.2.3 for 语句 24
4.2.4 continue 语句 24
4.3 例外处理语句 25
4.4 注释语句 25
第5章 复合数据类型(一)-类与接口 26
5.1面向对象的程序设计基本概念 26
5.1.1 对象 26
5.1.2 消息 26
5.1.3 类 27
5.2 类 27
5.2.1 类声明 27
5.2.2 类体 27
5.2.3成员变量 28
5.2.4 方法 29
5.2.5 方法重载 30
5.2.6 构造方法 30
5.2.7 finalize ()方法 30
5.2.8 成员变量和方法的访问权限 30
5.2.9 实例成员和类成员 31
5.3 对象 32
5.3.1 对象的生成 32
5.3.2 对象的使用 32
5.3.3 对象的清除 33
5.4 面向对象程序设计的技术-继承和多态 33
5.4.1 继承 33
5.4.2 多态 34
5.5 接口 35
5.5.1 接口的定义 35
5.5.2 接口的实现 35
5.5.3 接口类型 36
第6章 复合数据类型(二)-数组 37
6.1 一维数组 37
6.1.1 一维数组的定义(声明) 37
6.1.2 一维数组的初始化 37
6.1.3 一维数组元素的引用 38
6.1.4 一维数组在程序中的使用 39
6.2多维数组 40
6.2.1 二维数组的定义 40
6.2.2 二维数组的初始化 40
6.2.3 二维数组元素的引用 41
6.2.4 二维数组在程序中的使用 41
6.3 数组与对象的关系 42
第二篇 Java 语言编程技术 43
第7章 字符串处理 43
7.1 生成字符串 43
7.1.1 文字串 43
7.1.2 String 43
7.1.3 StringBuffer 44
7.2 访问字符串 44
7.2.1 String 45
7.2.2 类StringBuffer 46
7.3修改字符串 47
7.3.1 String 47
7.3.2 StringBuffer 48
7.4 其它处理 49
7.4.1字符串的比较 49
7.4.2字符串的转化 51
7.4.4 词法分析 51
7.5 小结 52
第8章 例外处理 54
8.1 例外 54
8.1.1 例外示例 54
8.1.2 例外处理机制 55
8.1.3 例外处理的类层次 56
8.2 例外处理 57
8.2.1 捕获例外 57
8.2.2 声明抛弃例外 61
8.2.3 抛弃例外 61
8.3 使用例外类 61
8.4 小结 62
第9章 线程 63
9.1 线程的概念 63
9.2 线程的属性 63
9.2.1 线程体 63
9.2.2 线程的状态 66
9.2.3 线程的调度 68
9.2.4 Daemon 线程 69
9.3 线程组 70
9.3.1 线程和线程组 70
9.3.2 类ThreadGroup 70
9.4 多线程程序 72
9.4.1 监控器 72
9.4.2 同步控制 74
第10章 输入/出处理 82
10.1 I/O 处理的类层次 82
10.2 Inputstream 和OutputStream 83
10.2.1 InputStream 84
10.2.2 OutputStream 84
10.3 文件处理 85
10.3.1 文件描述 85
10.3.2 文件I/O 处理 90
10.3.3 随机访问文件 92
10.4 管道流 94
10.5 内存的读/写 96
10.6 连接多个输入流 98
10.7 过滤流 100
10.7.1 BufferedInputStream和BufferedOutputStream 100
10.7.2 LineNumberInputStream 101
10.7.3 DataInputStream和DatA0utputStream 101
10.7.4 PushbackInputStream 101
10.7.5 PtintStream 103
10.7.6 自定义过滤流 103
10.8 StreamTokenizer 106
10.8.1 流解析语法表的初始状态 106
10.8.2 streamTokenizer 对重设设语法表的支持 106
10.8.3 用streamTokenizer重写10.7.4中的例10.9 107
10.9 小结 108
10.9.1 I/O 例外 108
10.9.2 流结束的判断 108
第11章 GUI设计 109
11.1 AWT概述 109
11.1.1 AWT组件的类层次 109
11.1.2 类Component 109
11.1.3 类Container 111
11.2 AWT基本组件 111
11.2.1 按钮( Button) 111
11.2.2 画布(Canvas) 112
11.2.3检验盒(Checkbox) 112
11.2.4 选择框(Choice) 113
11.2.5 标签(Label) 114
11.2.6 列表(List) 114
11.2.7 滚动条(Scrollbar) 115
11.2.8 文本区(TextField和TextArea) 116
11.3 AWT 容器 118
11.3.1 画板( Panel) 118
11.3.2 窗口(Window) 119
11.3.3框架(Frame) 119
11.3.4对话框(Dialog) 120
11.3.5 文件对话框(FileDialog) 122
11.4菜单 122
11.4.1菜单条(MenuBar) 122
11.4.2菜单项(MenuItem) 122
11.4.3校验菜单项(CheckboxMenuItem) 122
11.4.4菜单(Menu) 122
11.4.5 举例 122
11.5 布局 124
11.5.1 FlowLayout 124
11.5.2 BorderLayour 125
11.5.3 GridLayout 126
11.5.4 CriBagLayout 126
11.5.5 CardLayout 130
11.5.6 null和自定义布局管理器 130
11.6 AWT 事件处理机制 130
11.6.1 事件(Event) 131
11.6.2 事件处理 131
11.7 GUI设计示例 134
11.7.1 GUI设计的基本步骤 134
11.7.2 实例GUIDemo 135
11.7.3 例程中的类 145
11.7.4 组件层次及布局设计 146
11.7.5 事件处理 146
11.7.6 程序运行 147
11.8 AWT组件的同等类 148
第12章 JavaApplet 149
12.1 Applet简介 149
12.2 Applet与HTML 150
12.3 Applet 的执行框架 151
12.4 Applet的GUI设计 152
12.4.1 Applet常用的几种方法 152
12.4.2 Applet的性质 152
12.5 Applet通讯 153
12.5.1 同页Applet的通讯 153
12.5.2 与浏览器通讯 157
12.5.3 网络通讯 162
12.6 小结 163
12.6.1 安全性限制 163
12.6.2 Applet设计技巧 163
12.7 Applet实例—15子棋游戏 164
第13章 多媒体支持 170
13.1 声音 170
13.2 AWT绘图 170
13.3 图形 171
13.4 文字 174
13.5 图象 177
13.5.1 载入图象 178
13.5.2 显示图象 179
13.5.3 生成图象 181
13.5.4 处理图象 182
13.6 动画 185
13.6.1 动画实例 185
13.6.2 动画技巧 187
13.6.3 动画模板 189
第14章 网络通讯 194
14.1 URL 194
14.1.1 RUL的组成和类URL 194
14.1.2 通过URL访问WWW 196
14.1.3 通过URL Connection 连接WWW 197
14.2 socket通讯 198
14.2.1 socket 通讯的步骤 198
14.2.2 打开socket 198
14.2.3 打开输入/出流 199
14.2.4 关闭socket 199
14.2.5 示例 200
14.3 数据报通讯 202
14.3.1 数据报通讯和流式通讯 202
14.3.2 DatagramSocket 和DatagramPacket 203
14.4 多客户机制 207
14.5 安全性 217
14.5.1 Applet的安全考虑 218
14.5.2 对安全性的一些建议 222
第15章 实用程序类 223
15.1 基本数据类型封装 223
15.1.1 数字 223
15.1.2 字符类Chatracter 224
15.1.3 布尔类Boolean 224
15.2 算术运算 224
15.3 对象枚举 224
15.3.1 接口Enumeration 225
15.3.2 线性表 225
15.3.3 相联表 226
15.4 系统资源 228
15.4.1 类System 228
15.4.2 Runtime对象 230
15.5 日期处理 230
15.6 处理程序属性 231
15.6.1 类Properties 231
15.6.2 系统属性 232
15.6.3 命令行参数 234
15.6.4 Applet参数 235
第16章 集成本机方法 236
16.1 集成本机方法的步骤 236
16.1.1 编写Java源文件 236
16.1.2 编译Java 源文件 237
16.1.3 生成头文件 237
16.1.4 生成存根文件 238
16.1.5 编写C语言文件 238
16.1.6 生成动态库 238
16.1.7 运行Java 程序 239
16.2 实现本机方法 239
16.2.1 贯穿始终的例子 239
16.2.2 方法与函数 242
16.2.3 参数传递 243
16.2.4 返回类型 244
16.2.5访问Java对象 244
16.3 实用函数 245
16.3.1字符串处理 245
16.3.2 多线程同步处理 247
16.3.3 例外处理 247
第三篇 附录 249
附录A 须注意的问题 249
附录B 保留字 252
附录C 包 253
附录D 部分类和接口 254