第1章 Java系统环境概述 1
1.1 编程语言的发展 1
目录 1
1.1.1 机器语言 2
1.1.2 汇编语言 2
1.1.3 高级语言 2
1.1.4 面向对象的语言 3
1.2 网络时代的编程语言——Java 4
1.2.1 Java的产生 4
1.1.5 面向对象语言的发展 4
1.2.2 Java的特点 5
1.3 Java的开发运行环境 9
1.3.1 建立Java 2 SDK开发环境 9
1.3.2 Java工具集 11
1.4 Java程序的运行步骤 11
1.4.1 运行系统的结构及工作原理 12
1.4.2 Java Application程序的建立及运行 12
1.4.3 Java Applet程序的建立及运行 14
1.4.4 Java虚拟机 16
习题1 17
第2章 Java语言基础 18
2.1 Java符号集 18
2.1.1 标识符及其命名 18
2.1.2 关键字 19
2.1.3 运算符 19
2.1.4 分隔符 20
2.1.5 注释 20
2.2 数据类型、常量与变量 20
2.2.1 数据类型的概念 20
2.2.2 常量 21
2.2.3 变量 23
2.2.4 引用类型 27
2.3 表达式和语句 27
2.3.1 算术表达式 27
2.3.2 赋值表达式 31
2.3.3 表达式语句 32
2.3.4 关系表达式 33
2.3.5 逻辑表达式 34
2.3.6 位运算 35
习题2 36
2.3.7 运算符的优先级 36
第3章 程序流程控制 38
3.1 选择结构程序设计 38
3.1.1 if语句 38
3.1.2 switch语句 43
3.1.3 条件运算符 45
3.2 循环结构程序设计 46
3.2.1 while语句 46
3.2.2 do-while语句 47
3.2.3 for语句 48
3.2.4 for语句头的变化与逗号运算符 49
3.2.5 循环语句比较 50
3.2.6 循环控制要点 51
3.2.7 循环嵌套 53
3.3 break和continue语句 55
3.3.1 break语句 55
3.3.2 continue语句 57
习题3 58
4.1 类与对象的概念 60
4.1.1 抽象原则 60
第4章 类与对象 60
4.1.2 对象 61
4.1.3 类 61
4.1.4 类与对象的关系 62
4.1.5 定义类的一般格式 63
4.1.6 Java类库 64
4.1.7 创建对象 66
4.1.8 使用对象 68
4.1.9 对象的初始化与构造方法 69
4.2.1 封装的概念 71
4.2 封装机制 71
4.2.2 类的严谨定义 72
4.2.3 类修饰符 72
4.3 数据成员 75
4.3.1 数据成员的声明 75
4.3.2 用static修饰的静态数据成员 75
4.3.3 静态数据成员的初始化 76
4.3.4 用Final修饰的最终数据成员 77
4.4 成员方法 78
4.4.1 成员方法的分类 78
4.4.2 声明成员方法的格式 79
4.4.3 方法体中的局部变量 79
4.4.4 成员方法的返回值 80
4.4.5 形式参数与实际参数 81
4.4.6 成员方法的引用方式 83
4.4.7 引用成员方法时应注意的事项 83
4.4.8 成员方法的递归引用 83
4.4.9 用static修饰的静态方法 86
4.4.10 数学函数类方法 87
4.4.11 用final修饰的最终方法 88
4.4.12 用native修饰的本地方法 89
习题4 89
5.1.1 消息的概念 91
5.1 消息 91
第5章 消息、继承与多态 91
5.1.2 公有消息和私有消息 92
5.1.3 特定于对象的消息 92
5.2 访问控制 94
5.2.1 公共访问控制符public 94
5.2.2 缺省访问控制符 95
5.2.3 私有访问控制符private 96
5.2.4 保护访问控制符protected 97
5.3 多态机制 97
5.3.2 重载 98
5.3.1 多态的概念 98
5.4 继承机制 99
5.4.1 继承的概念 99
5.3.3 覆盖 99
5.4.2 继承的特征 100
5.4.3 Java用extends指明继承关系 100
5.4.4 this与super 103
5.4.5 构造方法的重载与继承 107
5.4.6 向方法传递对象 109
5.4.7 继承与封装的关系 110
5.5.1 抽象类 111
5.5 抽象类、接口与包 111
5.5.2 接口 114
5.5.3 包与程序复用 120
习题5 124
第6章 数组 126
6.1 一维数组 127
6.1.1 一维数组的声明 127
6.1.2 一维数组的初始化 127
6.1.3 一维数组的引用 128
6.2.1 测定数组的长度 129
6.2 一维数组引用举例 129
6.2.2 数组下标的灵活使用 130
6.2.3 数组间相互赋值 133
6.2.4 向成员方法传递数组元素 134
6.2.5 向成员方法传递数组 134
6.2.6 同类型不同长度的数组引用同一个成员方法 136
6.2.7 数组元素排序 137
6.2.8 对象数组 140
6.3 二维数组 142
6.3.2 二维数组的初始化 143
6.3.1 二维数组的声明 143
6.4 二维数组的引用 145
6.4.1 测定数组的长度及数组赋值 145
6.4.2 数组名作为成员方法的参数 147
习题6 149
第7章 字符串类 151
7.1 String类 151
7.1.1 创建String对象 151
7.1.2 String类的构造方法 152
7.1.4 访问字符串对象 154
7.1.3 String类的常用方法 154
7.1.5 字符串比较 156
7.1.6 字符串操作 157
7.1.7 将其他类型的数据转换成字符串 158
7.1.8 main方法中的参数 159
7.2 StringBuffer类 160
7.2.1 创建StringBuffer对象 160
7.2.2 StringBuffer类的常用方法 160
7.2.3 StringBuffer类的测试缓冲区长度的方法 161
7.2.4 StringBuffer类的append()方法 162
7.2.5 StringBuffer类的insert()方法 163
7.2.6 StringBuffer类的setcharAt()方法 164
习题7 164
第8章 链表 166
8.1 链接存储结构的概念 166
8.1.1 顺序存储结构的优缺点 166
8.1.2 链接存储的概念 167
8.1.3 链接存储结构的优缺点 168
8.2 链表结点类 169
8.2.1 单链表结点类 169
8.2.3 创建单链表结点类的应用示例 170
8.2.2 双链表结点类 170
8.2.4 单链表中结点的链接方法 171
8.3 单链表类及其基本操作 172
8.3.1 单链表类的抽象描述 172
8.3.2 创建一个空链表 173
8.3.3 向单链表中添加结点 174
8.3.4 遍历单链表 175
8.3.6 查找单链表中的一个结点 178
8.3.7 按给定条件向单链表中插入一个结点 180
8.3.8 删除单链表中的一个结点 182
8.3.9 单链表基本操作示例 184
8.4 单链表的其他操作 187
8.4.1 修改链表中结点的数据值 187
8.4.2 链表的排序 188
8.4.3 链表的修改与排序应用示例 190
习题8 191
9.1 GUI设计概述 193
9.1.1 图形用户界面元素分类 193
第9章 文字与图形GUI设计 193
9.1.2 Applet的执行程序 194
9.1.3 JApplet类 195
9.1.4 Java 2D API 195
9.1.7 三种图形对象 196
9.1.6 Java 2D API坐标系统 196
9.1.8 Graphics2D对象的属性设置 196
9.1.5 与图形文字有关的类及其继承关系 196
9.2 绘制文字 197
9.2.1 绘制文字的成员方法 197
9.2.2 Font类 199
9.3.1 Color类的构造方法 201
9.3.2 Color类的数据成员常量 201
9.3 Color类 201
9.3.3 Color类的成员方法 202
9.4 绘制形状图形 203
9.4.1 绘制几何图形的方法与步骤 203
9.3.4 应用举例 203
9.4.2 绘制线段与矩形 204
9.4.3 绘制椭圆、圆及弧 207
9.4.4 绘制多边形 209
9.4.5 图形重叠时的色彩设置 210
9.4.6 绘制剪切文字图形 212
习题9 214
10.1 Swing概述 216
10.1.1 Swing中常用的包 216
第10章 常用组件GUI设计 216
10.1.2 常用组件的继承关系 217
10.2.1 委托事件模型 218
10.2.2 Swing组件的事件及监听者 218
10.2 事件响应原理 218
10.2.3 Java.awt事件类继承关系 221
10.2.4 AWT中的事件与事件监听者 221
10.3 JLable组件 223
10.4 JButton组件与JToggleButton组件 223
10.4.1 AbstractButton类的常用成员方法 224
10.4.3 JToggleButton类的构造方法 225
10.4.4 ActionEvent事件及其响应 225
10.4.2 JButton类的构造方法 225
10.4.5 应用举例 226
10.5.1 JCheckBox类的构造方法 228
10.5.2 JradioButton类的构造方法 228
10.5 JCheckBox和JRadioButton组件 228
10.5.3 ItemEvent事件 229
10.5.4 应用举例 229
10.6 JComboBox组件 231
10.6.1 JComboBox类的构造方法及成员方法 232
10.6.2 事件响应 232
10.7 JList组件 233
10.7.1 JList类的构造方法及成员方法 234
10.7.2 ListSelectionEvent事件 234
10.8.1 JTextField组件的构造方法及成员方法 236
10.8.2 JTextArea组件的构造方法及成员方法 236
10.8 JTextField与JTextArea组件 236
10.8.3 事件处理 237
10.8.4 应用举例 238
习题10 239
11.1 界面布局管理 241
11.1.1 FlowLayout 241
第11章 高级组件GUI设计 241
11.1.2 BorderLayout 242
11.1.3 CardLayout 243
11.1.4 GridLayout 244
11.1.5 BoxLayout 245
11.2 键盘事件(KeyEvent) 248
11.3 鼠标事件(MouseEvent) 249
11.4 窗口与面板 251
11.4.1 JFrame容器 251
114.2 窗口事件(WindowEvent) 253
11.4.3 JPanel容器 255
11.4.4 JScrollPane容器 257
11.4.5 JScrollbar组件 . 258
11.4.6 JTabbedPane容器 262
11.5 菜单设计 264
11.6 对话框设计 266
11.6.1 JOptionPane类对话框 267
11.6.2 JDialog类对话框 274
习题11 277
第12章 异常处理 279
12.1 Java的异常处理机制 279
12.1.1 异常处理机制的结构 280
12.1.2 异常类的继承关系 280
12.2 Java的异常处理语句 283
12.2.1 try-catch-finally语句 283
12.2.2 嵌套try-catch-finally语句 284
12.2.3 抛出异常的throw语句与throws语句 285
习题12 287
13.1 Java中的多线程实现技术 288
13.1.1 线程的生命周期 288
第13章 多线程 288
13.1.2 Thread类的方法 290
13.1.3 通过继承Thread类方式创建线程 292
13.1.4 通过实现Runnable接口方式创建线程 293
13.2.1 线程调度 295
13.2.2 线程优先级 295
13.2 多线程的管理 295
13.2.3 线程同步 296
13.2.4 线程组 299
习题13 299
14.1 基本输入/输出流类 301
14.1.1 InputStream类 301
第14章 输入与输出 301
14.1.2 OutputStream类 305
14.1.3 Reader类和Writer类 309
14.2 文件的输入/输出 312
14.2.1 File类 312
14.2.2 FileInputStream类和FileOutputStream类 315
14.2.3 字节文件输入/输出流的读/写 316
14.2.4 FileReader类和FileWriter类 319
14.2.5 RandomAccessFile类 320
习题14 323
第15章 网络编程 325
15.1 URL通信 325
15.1.1 URL类 326
15.1.2 利用URL类访问网上资源示例程序 327
15.1.3 使用URLConnection类访问网上资源 329
15.2 Socket通信 330
15.2.1 Socket的概念及通信机制 330
15.2.2 Socket类与ServerSocket类 331
15.2.3 流式Socket通信的示例程序 333
15.2.4 URL通信与Socket通信的区别 336
15.3 UDP通信 337
15.3.1 UDP通信机制 337
15.3.3 DatagramPacket类 338
15.3.4 UDP通信示例程序 338
15.3.2 DatagramSocket类 338
习题15 341
16.1 关系数据库与SQL语言 343
16.1.1 关系数据库的基本概念 343
第16章 JDBC连接数据库 343
16.1.2 数据定义语言 344
16.1.3 数据操纵语言 345
16.1.4 数据查询语言 345
16.2 使用JDBC连接数据库 346
16.2.1 JDBC结构 346
16.2.2 四类JDBC驱动程序 347
16.2.3 JDBC编程要点 348
16.2.4 常用的JDBC类与方法 348
16.2.5 安装ODBC驱动程序示例 352
16.3 JDBC编程实例 354
16.3.1 创建数据表 354
16.3.2 向数据表中插入数据 355
16.3.3 更新数据 356
16.3.4 删除记录 358
习题16 359
参考文献 360
8.3.5 单链表的创建与遍历示例程序 716