1.1 Java与程序 1
1.1.1 概述 1
第1章 Java程序设计概述 1
1.1.2 Java的发展 2
1.2 Java语言的特点 3
1.3 Java程序介绍 4
1.3.1 Java虚拟机 4
1.3.2 Java开发工具 4
1.3.3 SDK目录结构 5
1.3.4 Java 2开发工具简介 5
1.3.5 Java的API类库与API文档 6
1.3.6 Java程序结构 7
1.3.7 最简单的Java程序 9
1.4.1 编辑源程序 10
1.4.2 编译源程序 10
1.4 Java程序的开发过程 10
1.4.3 运行Java程序 11
1.4.4 编写第一个Applet 11
1.5 Java资源的获取与安装 13
1.5.1 下载SDK 13
1.5.2 安装SDK 13
1.5.3 设置SDK的操作环境 15
1.6 Eclipse简介 17
1.6.1 Eclipse环境界面 17
1.6.2 Java开发环境(JDE) 19
1.7 本章概要 24
1.8 课后练习 25
第2章 Java程序设计的基本概念 27
2.1 数据类型与标识符 27
2.1.1 数据类型 27
2.2 常量 28
2.1.2 标识符 28
2.2.1 整型常量值 29
2.2.2 实型常量值 29
2.2.3 字符型和字符串常量值 29
2.2.4 布尔型常量值 29
2.2.5 常量的定义和使用 30
2.3 变量 31
2.3.1 变量概述 31
2.3.2 变量的定义及赋值 32
2.3.3 变量的作用域 33
2.3.4 变量的默认值 33
2.4 运算符与表达式 34
2.4.1 赋值运算符与赋值表达式 34
2.4.2 算术运算符与算术表达式 34
2.4.3 关系运算符与关系表达式 36
2.4.4 逻辑运算符与逻辑表达式 37
2.4.5 复合赋值运算符 38
2.4.6 其他运算符 38
2.4.7 运算符的优先级与结合性 39
2.5 数据类型的转换 40
2.6 本章概要 42
2.7 课后练习 42
第3章 Java的结构化程序设计 45
3.1 顺序结构及基本语句 45
3.1.1 赋值语句 45
3.1.2 输入语句 46
3.2 选择结构语句 48
3.2.1 if语句 48
3.2.2 if-else语句 50
3.2.3 if-else if语句 51
3.2.5 switch语句 53
3.2.4 if语句的嵌套 53
3.3 循环结构语句 56
3.3.1 for循环语句 56
3.3.2 while循环结构语句 58
3.3.3 do while循环结构语句 58
3.3.4 循环结构语句的嵌套 59
3.4 转移语句 61
3.4.1 break语句 61
3.4.2 continue语句 63
3.5 数组 64
3.5.1 一维数组的声明与引用 64
3.5.2 数组的赋值 65
3.5.3 一维数组程序举例 66
3.5.4 二维数组的声明及引用 68
3.5.5 数组的复制 70
3.5.6 字符串处理 71
3.6 方法 75
3.6.1 Java的程序模块化 75
3.6.2 方法的定义及调用 75
3.6.3 参数的传递 76
3.6.4 作用域 79
3.6.5 return语句 79
3.6.6 方法的嵌套调用 80
3.6.7 递归 82
3.7 本章概要 83
3.8 课后练习 83
第4章 Java的面向对象程序设计 89
4.1 面向对象程序设计概述 89
4.1.1 面向对象程序设计的目的 89
4.1.2 类和对象 89
4.1.3 面向对象程序设计的核心技术 89
4.2.1 类的声明格式 90
4.1.4 Java的面向对象技术 90
4.2 类的创建 90
4.2.2 成员变量 91
4.2.3 成员方法 91
4.3 对象的创建和使用 93
4.3.1 创建对象 93
4.3.2 构造方法和对象的初始化 94
4.3.3 对象的使用 96
4.3.4 对象的销毁 96
4.4 类的封装 98
4.4.1 封装的目的 98
4.4.2 访问权限的设置 98
4.4.3 类成员(静态成员) 100
4.5 类的继承 103
4.5.1 继承的基本概念 103
4.5.2 子类的创建 104
4.5.3 null、this、super对象运算符 107
4.5.4 最终类和抽象类 109
4.6 类的多态性 110
4.6.1 方法的重载 110
4.6.2 方法的覆盖 111
4.6.3 前期绑定和后期绑定 112
4.7 接口 113
4.7.1 接口的声明 113
4.7.2 接口的实现 114
4.8 包 115
4.8.1 Java的类和包 115
4.8.2 引用Java定义的包 117
4.8.3 自定义包 117
4.8.4 包和访问权限 119
4.10 课后练习 120
4.9 本章概要 120
第5章 Java的图形用户界面 125
5.1 Applet概述 125
5.1.1 一个简单的Applet例子 125
5.1.2 Applet的安全模型 128
5.1.3 java.applet.Applet类与其他类的关系 128
5.1.4 Applet的生命期 128
5.2 java.awt与图形用户界面 130
5.2.1 标签和文本域 131
5.2.2 Java中的事件处理机制 133
5.2.3 按钮 138
5.2.4 布局 139
5.2.5 面板 141
5.2.6 文本区域 142
5.2.7 复选框和单选钮 143
5.2.8 下拉列表 146
5.2.9 列表 148
5.2.10 窗口与菜单 151
5.2.11 对话框 163
5.3 swing 166
5.3.1 swing的优点 166
5.3.2 swing类的继承关系 166
5.3.3 swing中的容器 167
5.3.4 swing中的常用组件 180
5.3.5 综述swing中的事件 196
5.4 二维图形设计 197
5.4.1 二维图形的坐标系统 198
5.4.2 字体 198
5.4.3 颜色 198
5.4.4 绘图 199
5.6 课后练习 203
5.5 本章概要 203
第6章 Java的异常处理 207
6.1 异常和异常对象 207
6.2 异常的捕获与处理 208
6.3 try语句的嵌套 211
6.4 throw语句 213
6.5 throws语句 214
6.6 使用异常处理的准则 215
6.7 本章概要 215
6.8 课后练习 216
7.1.2 线程和多任务 219
7.1 Java对多线程的支持 219
7.2 线程的创建 219
7.1.1 进程和线程 219
7.1 线程的概念 219
第7章 Java的多线程程序设计 219
7.2.1 Runnable接口 220
7.2.2 Thread类 220
7.2.3 创建线程的方法 220
7.3 线程的状态与控制 222
7.3.1 线程的状态 222
7.3.2 对线程状态的控制 224
7.4 线程的优先级和调度 227
7.4.1 线程的优先级 227
7.4.2 线程的调度 227
7.5 线程组 227
7.5.1 线程组 227
7.5.2 ThreadGroup类 228
7.6 线程的同步 228
7.6.1 线程的同步机制 228
7.6.2 共享数据的互斥锁定 230
7.6.3 数据传送时的同步控制 233
7.6.4 死锁 235
7.7 本章概要 238
7.8 课后练习 238
第8章 Java的输入输出流 241
8.1 流的基本概念 241
8.1.1 数据流 241
8.1.2 Java的标准输入输出 241
8.1.3 java.io包中的数据流 243
8.2 字节流和顺序文件的读写 243
8.2.1 InputStream和Output-Stream类 243
8.2.2 文件字节输入输出流 244
8.2.3 创建文件输入输出流对象并打开文件 244
8.2.4 对文件进行读写的方法 245
8.2.5 字节文件流的关闭 245
8.3.1 Reader和Writer类 247
8.3 字符流 247
8.3.2 字符文件流FileReader和FileWriter类 248
8.3.3 创建字符流文件对象并打开文件 248
8.3.4 字符文件流的读写 248
8.3.5 字符文件流的关闭 248
8.3.6 字符缓冲流BufferedReader和BufferedWriter 249
8.4 文件类 250
8.4.1 文件类File 250
8.4.2 File类的方法 251
8.4.3 文件过滤 252
8.5 文件的随机读写 254
8.5.1 RandomAccessFile类 254
8.5.2 RandomAccessFile的构造方法 254
8.5.3 RandomAccessFile的方法 254
8.7 课后练习 256
8.6 本章概要 256
第9章 Java的网络应用 259
9.1 网络的基本概念 259
9.1.1 IP地址和端口号 259
9.1.2 URL 260
9.1.3 TCP与UDP 260
9.1.4 Socket 261
9.2 URL的使用 262
9.2.1 使用URL的方法 262
9.2.2 应用举例 264
9.3 Socket的应用 270
9.3.1 TCP套接字通信基本步骤 271
9.3.2 服务器端程序设计举例 272
9.3.3 客户端程序设计举例 275
9.4 网络安全管理 278
9.4.2 缓存溢出 279
9.4.1 Java的安全特性 279
9.4.3 竞争状态 280
9.4.4 建立安全性策略 281
9.4.5 安全基本原则 283
9.5 本章概要 283
9.6 课后练习 284
第10章 Java的多媒体应用 287
10.1 图像显示 287
10.2 动画设计 289
10.3 声音播放 295
10.4 本章概要 299
10.5 课后练习 299
附录1 部分参考答案 301
附录2 上海市高等学校计算机等级考试(二级)——《Java程序设计》考试大纲 307
附录3 2005年上海市高等学校计算机等级考试试卷(二级)——《Java程序设计》 311