第1章 Java语言概述 1
1.1 Java简介 1
1.1.1 Java语言的发展简史 1
1.1.2 Java语言的特点 2
1.2 Java程序的开发过程 4
1.3 一个简单的Java程序 4
1.4 一个简单的Java应用程序(Java Applet) 6
1.5 开发环境 7
1.5.1 JDK简介 7
1.5.2 JDK的安装和使用 10
练习题 11
第2章 Java语言的基本语法 12
2.1 符号集 12
2.1.1 关键字 12
2.1.2 标识符 12
2.1.3 注释 13
2.2 基本数据类型 13
2.3 常量和变量 14
2.3.1 常量 14
2.3.2 变量 15
2.4 表达式和运算符 17
2.4.1 算术运算符 17
2.4.2 关系运算符和逻辑运算符 19
2.4.3 位运算符 22
2.4.4 赋值运算符 22
2.4.5 其他运算符 23
2.4.6 运算符的优先级和结合性 24
2.5 流程控制 25
2.5.1 条件语句 25
2.5.2 多分支语句和中断语句 29
2.5.3 循环语句 31
2.6 数组 36
2.6.1 一维数组 36
2.6.2 数组复制 39
2.6.3 多维数组 39
2.7 字符串 41
2.7.1 字符数组与字符串 41
2.7.2 字符串 41
2.7.3 字符串操作 43
2.7.4 字符串数组 45
练习题 46
第3章 面向对象编程 49
3.1 面向对象程序设计的主要概念 49
3.1.1 概述 49
3.1.2 对象的基本概念 50
3.1.3 类的基本概念 51
3.1.4 对象的状态、行为、标识 51
3.1.5 消息 52
3.1.6 面向对象程序设计方法的特点 52
3.1.7 面向对象的程序设计语言 56
3.2 Java的类 57
3.2.1 类声明 57
3.2.2 类体 59
3.2.3 构造函数 63
3.3 Java的对象 63
3.3.1 对象的生成 64
3.3.2 对象的使用 65
3.3.3 对象的清除 66
3.4 继承 67
3.4.1 继承关系的定义 67
3.4.2 成员变量的继承和隐藏 70
3.4.3 方法的继承、重载和覆盖 71
3.4.4 this和super 77
3.4.5 构造函数的继承与重载 81
3.5 多态 83
3.5.1 编译时多态 83
3.5.2 运行时多态 85
3.6 Object类 86
练习题 88
第4章 包和接口 91
4.1 包 91
4.1.1 定义包 91
4.1.2 编译和运行包 92
4.2 访问保护 93
4.3 引入包 97
4.4 接口 99
4.4.1 接口定义 100
4.4.2 实现接口 101
4.4.3 应用接口 103
4.4.4 接口中的变量 107
4.4.5 接口的继承 109
练习题 110
第5章 异常 111
5.1 编程中的错误 111
5.1.1 编译错误 111
5.1.2 运行错误 112
5.2 异常与异常类 112
5.2.1 异常处理机制概述 112
5.2.2 异常类的结构与组成 114
5.2.3 系统定义的运行异常 115
5.2.4 用户自定义的异常 117
5.3 异常的处理 118
5.3.1 try-catch-finally 118
5.3.2 多异常的处理 121
5.4 异常的抛出 124
5.4.1 系统自动抛出的异常 125
5.4.2 语句抛出的异常 125
5.5 应用举例 126
练习题 129
第6章 输入与输出 131
6.1 输入输出类库 131
6.1.1 流 131
6.1.2 输入输出流类 131
6.2 标准输入输出 136
6.2.1 标准输入 136
6.2.2 标准输出 139
6.2.3 标准错误 140
练习题 140
第7章 Java数据库编程和网络编程 141
7.1 关系数据库简介 141
7.2 JDBC概述 141
7.2.1 JDBC与SQL 142
7.2.2 JDBC与ODBC 142
7.2.3 JDBC支持的两种模型 143
7.2.4 JDBC的抽象接口 143
7.2.5 JDBC的数据库驱动器Driver 144
7.3 连接数据库 144
7.3.1 建立数据源 144
7.3.2 具体示例 145
7.4 网络编程 152
7.4.1 Java网络基础知识 152
7.4.2 URL 154
7.4.3 套接字 157
练习题 160
第8章 图形用户界面 161
8.1 抽象窗口工具集AWT 161
8.1.1 AWT简介 161
8.1.2 使用AWT的好处 162
8.1.3 GUI标准构件的使用方法 163
8.1.4 添加构件到容器中 165
8.2 基本程序段 166
8.2.1 一个更图形化的例子 168
8.3 按钮 168
8.4 捕获事件 169
8.5 文本字段 172
8.6 文本区域 174
8.7 标签 175
8.8 用Frame创建窗口 177
8.9 复选框 178
8.10 单选按钮 180
8.11 下拉列表框 182
8.12 列表框 185
8.13 布局的控制 188
8.13.1 BorderLayout 189
8.13.2 FlowLayout 190
8.13.3 GridLayout 192
8.13.4 CardLayout 194
8.13.5 联合布局(Combining Layouts) 194
8.13.6 GridLayout 195
8.14 菜单和对话框 196
8.14.1 菜单 196
8.14.2 对话框 201
练习题 203
第9章 Java多媒体设计 205
9.1 图形处理 205
9.1.1 直线 205
9.1.2 设置颜色 206
9.1.3 字符数组和字节数组的显示 207
9.1.4 绘制矩形 208
9.1.5 绘制椭圆和弧 209
9.1.6 绘制多边形 210
9.2 图像处理 211
9.3 2D图像 213
9.4 动画处理 217
9.5 播放声音 219
练习题 222
第10章 Java线程 223
10.1 线程初步 223
10.1.1 线程的概念 223
10.1.2 使用线程的原因 223
10.2 线程的生命 226
10.2.1 创建线程 226
10.2.2 启动线程 227
10.2.3 结束线程 227
10.2.4 加入线程 227
10.2.5 调度 227
10.2.6 休眠 228
10.2.7 守护程序线程 229
10.3 无处不在的线程 232
10.3.1 线程的来源 232
10.3.2 共享对数据的访问 233
10.3.3 计数器的同步 238
10.3.4 同步详细信息 241
10.4 其他线程API的详细信息 244
10.4.1 wait(),notify()和notify All()方法 244
结束语 251
练习题 251
主要参考文献 252