第1章 Java发展概述1
1.1 程序设计语言的发展1
1.2 Java语言1
1.2.1 Java语言的发展历史1
1.2.2 Java语言的特点2
1.3 Java的开发与运行环境4
1.3.1 J2SDK的安装4
1.3.2 J2SDK的设置5
1.4 开发与运行Java程序的步骤5
1.4.1 选择编辑工具5
1.4.2 编译与运行Java程序5
第2章 Java语言程序和HTML简介7
2.1 Java语言的Application程序7
2.1.1 源代码的编辑7
2.1.2 字节码文件的生成8
2.1.3 字节码文件的解释执行9
2.2 HTML简介10
2.2.1 HTML的基本要素12
2.2.2 HTML文件的结构13
2.2.3 在HTML文件中加入图像、链接和声音13
2.2.4 Applet标记15
2.2.5 常用的HTML标记15
2.2.6 HTML文件的编辑16
2.3 Java语言的Applet程序17
2.3.1 源代码的编辑17
2.3.2 代码的嵌入18
2.3.3 Applet程序的运行18
2.4 Java语言字符界面的输入输出20
2.5 Java语言图形界面的输入输出21
2.5.1 Java Applet图形界面的输入输出22
2.5.2 Java Application图形界面的输入输出23
第3章 Java语言的数据类型26
3.1 Java的标识符26
3.2 Java的关键字26
3.3 Java的常量和变量28
3.3.1 常量和符号常量28
3.3.2 变量30
3.3.3 变量作用域30
3.4 Java的基本数据类型30
3.4.1 整型30
3.4.2 实型31
3.4.3 字符型32
3.4.4 布尔型32
3.5 变量的初始化32
3.6 简单程序举例33
第4章 Java语言的运算符和表达式37
4.1 赋值、算术运算符及其表达式37
4.1.1 赋值运算符及其表达式37
4.1.2 算术运算符及其表达式38
4.2 关系、逻辑运算符及其表达式40
4.2.1 关系运算符及其表达式40
4.2.2 逻辑运算符及其表达式42
4.3 位运算符和表达式43
4.3.1 计算机内数据的表示43
4.3.2 位运算符及其表达式44
4.4 其他运算符47
4.5 Java语言运算符的优先级和结合性48
4.6 数据类型的转换49
4.6.1 数据类型的自动转换49
4.6.2 数据类型的强制转换49
第5章 Java语言的基本语句51
5.1 Java语言的3种基本结构51
5.2 顺序结构语句51
5.2.1 变量声明语句和表达式语句51
5.2.2 复合语句和分程序52
5.3 选择结构语句53
5.3.1 条件运算符53
5.3.2 if~else语句54
5.3.3 switch~case语句60
5.4 循环结构语句62
5.4.1 while语句62
5.4.2 for语句63
5.4.3 do~while语句64
5.4.4 循环嵌套65
5.5 转移控制语句66
5.5.1 break语句66
5.5.2 continue语句68
第6章 数组、字符串和向量73
6.1 一维数组73
6.1.1 一维数组的声明73
6.1.2 创建一维数组73
6.1.3 一维数组的初始化74
6.1.4 一维数组应用举例74
6.2 多维数组75
6.2.1 多维数组声明75
6.2.2 创建多维数组75
6.2.3 多维数组的初始化76
6.2.4 多维数组应用举例76
6.3 字符数组77
6.3.1 字符数组声明78
6.3.2 创建字符数组78
6.3.3 字符数组初始化及其举例78
6.4 不变字符串String类80
6.4.1 String类的构造方法80
6.4.2 字符串的常用方法82
6.4.3 字符串与子字符串的操作82
6.4.4 toString方法及其他方法84
6.5 可变字符串StringBuffer类84
6.5.1 StringBuffer类的构造方法84
6.5.2 StringBuffer类的常用方法85
6.6 向量86
6.6.1 向量的声明86
6.6.2 Vector类的常用方法87
第7章 Java语言的方法89
7.1 return语句89
7.2 Java语言方法的定义、返值和调用90
7.2.1 Java语言方法的修饰符90
7.2.2 Java语言方法的定义91
7.2.3 Java语言方法的调用93
7.2.4 Java语言方法的返值94
7.3 方法之间的数据传递95
7.3.1 方法间的数值传递96
7.3.2 方法间的引用传递96
7.4 Java语言方法的递归调用98
7.5 Java语言方法的命令行参数103
第8章 类的声明和对象的实例化105
8.1 Java的类105
8.1.1 类的定义105
8.1.2 类的修饰符106
8.1.3 类的类体107
8.1.4 类的构造方法108
8.2 类的成员变量109
8.2.1 类成员变量的声明109
8.2.2 类成员变量的修饰111
8.3 类的成员方法113
8.3.1 成员方法的设计113
8.3.2 成员方法的声明和修饰115
8.3.3 方法体117
8.3.4 消息的传递118
8.4 Java对象的实例化119
8.4.1 创建对象119
8.4.2 使用对象119
8.4.3 清除对象120
8.5 Java类的继承120
8.5.1 继承的概念120
8.5.2 继承的实现121
第9章 接口和包125
9.1 抽象类和方法125
9.1.1 定义抽象类125
9.1.2 抽象类的实现126
9.2 接口128
9.2.1 接口的概念128
9.2.2 定义接口128
9.2.3 接口的特点和实现129
9.3 包134
9.3.1 包的概念134
9.3.2 包的定义135
9.3.3 存放的位置135
9.3.4 包的引用136
9.3.5 将多个独立的类放入同一个包中136
第10章 异常处理141
10.1 Java的异常处理机制142
10.2 异常处理方法143
10.2.1 try…catch…finally结构144
10.2.2 抛出异常149
10.2.3 自定义异常152
第11章 输入和输出156
11.1 输入输出类库156
11.2 标准输入输出160
11.3 文件操作161
第12章 图形用户界面GUI172
12.1 AWT包172
12.1.1 屏幕坐标体系173
12.1.2 建立窗口的Frame类175
12.1.3 使用基本组件177
12.1.4 AWT图形用户界面的深入学习189
12.2 Java语言中的事件处理194
12.2.1 事件处理机制194
12.2.2 可用的事件监听者和它们处理的事件类型195
12.2.3 事件及其响应196
12.2.4 在Java中的事件处理方式199
12.3 swing包203
12.3.1 Swing 的层次结构及具体组件204
12.3.2 创建JFrame窗口205
12.3.3 窗口事件206
12.3.4 swing包中常用的组件208
第13章 高级用户界面GUI设计217
13.1 布局管理器217
13.1.1 布局管理器的概念217
13.1.2 Border布局管理器218
13.1.3 Flow布局管理器220
13.1.4 Card布局管理器221
13.1.5 Grid布局管理器223
13.1.6 Box布局管理器224
13.2 键盘和鼠标事件的处理225
13.2.1 键盘事件225
13.2.2 鼠标事件226
13.3 菜单设计228
13.4 对话框设计251
13.4.1 JoptionPane251
13.4.2 Dialog252
13.5 窗口254
13.5.1 JPanel容器254
13.5.2 JscrollPane255
第14章 多线程技术257
14.1 多线程的基本概念257
14.1.1 多线程257
14.1.2 Windows平台上线程的运行机制257
14.2 线程的状态259
14.2.1 线程的生命周期259
14.2.2 线程类260
14.3 线程体及其构造261
14.3.1 线程体261
14.3.2 采用直接继承构造线程体261
14.3.3 采用实现Runnable接口构造线程体262
14.4 线程同步控制263
14.4.1 synchronized关键字263
14.4.2 wait( )、notify( )/notifyall( )265
14.4.3 同步控制的信号量266
14.4.4 线程同步的示例267
参考文献274