第1章 Java语言概述 1
本章学习目标 1
1.1 Java语言的发展和特点 1
1.1.1 Java语言的发展 1
1.1.2 Java语言的特点 2
1.1.3 Java与C++的比较 4
1.1.4 Java程序的工作机制 6
1.2 Java程序举例 7
1.2.1 Java Application 7
1.2.2 Java Applet 8
1.2.3 Java程序结构 10
1.3 Java程序的开发工具与开发步骤 10
1.3.1 Java程序的开发工具的安装与环境配置 11
1.3.2 Java2 SDK开发工具及其使用 14
1.3.3 Java程序的集成开发环境 19
本章小结 21
习题一 22
第2章 Java语言基础 23
本章学习目标 23
2.1 标识符、保留字和分隔符 23
2.1.1 Java标识符 23
2.1.2 保留字 24
2.1.3 分隔符(Seprators) 24
2.1.4 注释(Comments) 24
2.2 数据类型概述 25
2.2.1 数据类型的划分 25
2.2.2 常量和变量 25
2.3 基本数据类型 26
2.3.1 整型数据 27
2.3.2 实型数据 28
2.3.3 字符型数据 28
2.3.6 类型转换 29
2.3.4 字符串数据 29
2.3.5 布尔型数据 29
2.4 运算符 30
2.4.1 算术运算符 30
2.4.2 关系运算符 31
2.4.3 布尔逻辑运算符 31
2.4.4 位运算符 32
2.4.5 赋值运算符 34
2.4.6 条件运算符 35
2.4.7 运算符优先级 35
2.5 表达式 36
2.6 简单的输入输出 36
2.6.1 输出 37
2.6.2 输入 37
本章小结 39
习题二 40
第3章 控制结构 41
本章学习目标 41
3.1 选择结构 41
3.1.1 if语句 41
3.1.2 switch语句 45
3.2 循环结构 47
3.2.1 while语句 48
3.2.2 do~while语句 49
3.2.3 for语句 50
3.3 跳转控制语句 52
3.3.1 标号 52
3.3.2 break语句 52
3.3.3 continue语句 53
3.3.4 return语句 54
3.4.1 方法的定义与调用 55
3.4 方法 55
3.4.2 方法调用时参数的传递 57
3.4.3 方法和变量的作用域 57
3.4.4 方法的嵌套和递归调用 59
3.4.5 方法的重载 60
本章小结 61
习题三 62
第4章 数组 64
本章学习目标 64
4.1 一维数组 64
4.1.1 一维数组的定义 64
4.1.2 一维数组的初始化 65
4.1.3 一维数组的引用 65
4.2 多维数组 67
4.2.1 二维数组的定义 67
4.2.2 二维数组的初始化 68
4.2.3 二维数组的引用 69
4.3 数组的常用方法 70
本章小结 72
习题四 72
第5章 面向对象的程序设计 73
本章学习目标 73
5.1 面向对象的基本概念 73
5.1.1 对象 73
5.1.2 消息 74
5.1.3 类 75
5.1.4 面向对象的基本特征 75
5.2 类 76
5.2.1 类的定义 76
5.2.2 成员变量 77
5.2.3 成员方法 77
5.2.4 类的对象 78
5.2.5 构造方法 80
5.2.6 修饰符 82
5.2.7 静态初始化 84
5.2.8 内部类 85
5.2.9 类的使用 86
5.3 类的继承 89
5.3.1 类继承的实现 89
5.3.2 this和super关键字 89
5.3.3 抽象类和抽象方法 91
5.3.4 类对象之间的类型转换 94
5.4 类的多态 95
5.4.1 方法重载 96
5.4.2 方法重写 96
5.5.1 接口的定义 98
5.5 接口(Interface) 98
5.5.2 接口的实现 99
5.5.3 接口的继承 100
5.5.4 接口的多态 102
5.6 包(Package) 103
5.6.1 包的创建 103
5.6.2 包的引用 104
5.6.3 设置CLASSPATH环境变量 106
5.7 Java类库 106
本章小结 111
习题五 111
第6章 字符串处理 113
本章学习目标 113
6.1 字符串常量 113
6.2 String类字符串 114
6.2.1 String类字符串的定义 114
6.2.2 String类字符串的基本操作 115
6.3.1 StringBuffer类字符串的定义 120
6.3 StringBuffer类字符串 120
6.3.2 StringBuffer类字符串的基本操作 121
6.4 main()方法的参数 124
本章小结 125
习题六 125
第7章 异常处理 127
本章学习目标 127
7.1 异常概述 127
7.1.1 异常基本概念 127
7.1.2 异常处理机制 128
7.2 Throwable类 129
7.2.1 异常类的层次和主要子类 129
7.2.2 异常类的方法和属性 130
7.3.1 try~catch~finally语句 131
7.3 异常处理 131
7.3.2 throw语句和throws子句 135
7.3.3 创建自己的异常 137
本章小结 138
习题七 138
第8章 输入输出处理 141
本章学习目标 141
8.1 输入/输出流概述 141
8.1.1 输入/输出流的概念 141
8.1.2 输入/输出类层次 142
8.1.3 标准输入/输出 145
8.2 字节输入输出流 146
8.2.1 文件输入/输出字节流 146
8.2.2 过滤流 148
8.3.1 输入/输出字符流 151
8.3 字符输入/输出流 151
8.3.2 文件输入/输出字符流 152
8.3.3 缓冲字符流 153
8.3.4 打印输出字符流 154
8.4 文件处理 154
8.4.1 文件描述 154
8.4.2 文件的顺序访问 156
8.4.3 文件的随机访问 158
8.5 对象的串行化 160
8.5.1 串行化的概念和目的 160
8.5.2 串行化方法 161
8.5.3 串行化的注意事项 162
8.5.4 串行化举例 162
8.6 其他常用流 163
8.6.1 管道流 163
8.6.3 顺序流 164
8.6.2 内存的访问 164
本章小结 165
习题八 165
第9章 多线程 166
本章学习目标 166
9.1 多线程概述 166
9.1.1 多线程的概念 166
9.1.2 Java中的多线程 167
9.1.3 线程的状态和生命周期 167
9.1.4 线程的调度和优先级 169
9.2 多线程的实现方法与控制 169
9.2.1 多线程的实现方法 169
9.2.2 多线程的控制 172
9.3 多线程的互斥与同步 173
9.3.1 多线程的互斥 173
9.3.2 多线程的同步 174
9.3.3 线程的死锁 177
习题九 178
本章小结 178
第10章 图形用户界面(GUI)设计 180
本章学习目标 180
10.1 图形用户界面设计概述 180
10.1.1 GUI支持的包和简单的GUI程序 180
10.1.2 容器、组件、布局和观感 184
10.2 布局管理器 186
10.2.1 FlowLayout布局管理器 186
10.2.2 BorderLayout布局管理器 187
10.2.3 GridLayout布局管理器 189
10.2.4 CardLayout布局管理器 190
10.2.5 GridBagLayout布局管理器 191
10.2.6 Swing布局管理器 193
10.3.1 事件处理模式 194
10.2.7 Null布局管理器 194
10.3 事件处理 194
10.3.2 Java事件层次结构 195
10.3.3 事件处理方法——实现事件监听器接口 196
10.3.4 事件适配器 196
10.3.5 典型事件处理 197
10.4 常用Swing组件 198
10.4.1 常用容器组件 198
10.4.2 标签(JLabel) 201
10.4.3 按钮(JButton) 201
10.4.4 文本框(JText) 203
10.4.5 复选框(JCheckBox) 208
10.4.6 单选按钮(JRadioButton) 209
10.4.7 列表框(JList) 211
10.4.8 组合框(JComboBox) 212
10.4.9 滑块(JSlider) 214
10.4.10 菜单 216
10.4.11 对话框 219
本章小结 222
习题十 223
第11章 Java Applet 225
本章学习目标 225
11.1 Applet概述 225
11.1.1 Applet基础 225
11.1.2 Applet的载入 225
11.1.3 Applet示例 226
11.2 Applet的创建和执行 227
11.2.1 Applet的类层次及框架结构 227
11.2.2 Applet的生命周期和主要方法 228
11.2.3 Applet和HTML 230
11.2.5 Applet和Application 233
11.2.4 Applet的执行 233
11.3 Applet的AWT绘制 235
11.3.1 AWT绘制基础 235
11.3.2 在Applet中输出文字 235
11.3.3 在Applet中使用颜色 238
11.3.4 在Applet中绘制图形 240
11.4 Applet的通信 242
11.4.1 同页Applet间的通信 242
11.4.2 Applet与浏览器间的通信 244
11.4.3 Applet的网络通信 244
11.5 Applet的应用 245
11.5.1 访问WWW资源 245
11.5.2 访问网络资源 245
本章小结 246
习题十一 247
参考文献 248