第1章 Java语言简介 1
1.1 Java语言的发展 1
1.2 Java语言的特点 1
1.2.1 简单性 2
1.2.2 面向对象 2
1.2.3 分布性 4
1.2.4 纠错性 4
1.2.5 安全性 4
1.2.6 体系结构中立 5
1.2.7 可移植性 6
1.2.8 解释执行 7
1.2.9 高性能 7
1.2.10 多线程 7
1.2.11 动态性 8
1.3 Java和C++的比较 8
1.4 Java运行时环境 10
1.4.1 Java运行时环境简介 10
1.4.2 JDK简介 10
1.4.3 Java运行时环境的安装和配置 11
1.5 Java语言的用途 13
1.6 Java程序简介 14
1.6.1 一个简单的Java应用程序 14
1.6.2 将应用程序编写为applet小程序 16
小结 18
第2章 面向对象 19
2.1 面向对象的概念 19
2.2 传统开发方法存在的问题 19
2.3 面向对象的基本概念 20
2.3.1 面向对象的特征 21
2.3.2 面向对象的要素 21
2.3.3 面向对象的开发方法 22
2.3.4 面向对象的模型 23
2.3.5 面向对象的分析 26
2.4 面向对象的设计 28
2.4.1 面向对象设计的准则 28
2.4.2 面向对象设计的启发规则 29
2.4.3 系统设计 30
2.5 面向对象的实现 31
2.5.1 设计语言 31
2.5.2 类的实现 31
2.5.3 应用系统的实现 32
2.5.4 面向对象的测试 32
小结 32
第3章 Java程序设计基础 33
3.1 Java程序的基本结构 33
3.2 标识符命名 34
3.3 数据类型与常量 35
3.3.1 数据类型 35
3.3.2 常量 36
3.4 变量 39
3.4.1 数值型变量 40
3.4.2 字符型变量 41
3.4.3 布尔型变量 41
3.5 表达式与运算符 41
3.5.1 什么是表达式 41
3.5.2 赋值运算符 42
3.5.3 算术运算符 42
3.5.4 关系运算符和逻辑运算符 44
3.5.5 位运算符 46
3.5.6 条件运算符 48
3.5.7 浮点运算符 48
3.5.8 数组运算符 49
3.5.9 字符串运算符 50
3.6 类型转换 50
3.7 属性定义 51
3.7.1 成员属性 51
3.7.2 局部属性 52
小结 54
练习 54
练习答案 55
第4章 程序流程控制 57
4.1 内容概述 57
4.2 程序的3种基本结构 57
4.2.1 顺序结构程序 57
4.2.2 选择结构程序 57
4.2.3 循环结构程序 58
4.3 条件语句 58
4.3.1 if语句 59
4.3.2 条件语句的使用 60
4.4 循环语句 61
4.4.1 while循环语句 61
4.4.2 构造循环结构的do-while语句 62
4.4.3 for循环语句 63
4.4.4 3种循环语句的比较 64
4.5 switch开关语句 65
4.6 转移语句 66
4.6.1 break语句 66
4.6.2 continue语句 67
4.6.3 return语句 69
小结 69
练习 69
练习答案 74
第5章 数组 76
5.1 数组 76
5.1.1 创建和使用一维数组 76
5.1.2 多维数组 79
小结 83
练习 83
练习答案 84
第6章 类设计 85
6.1 类与对象 85
6.2 类中的高级应用 88
6.2.1 static关键字 88
6.2.2 this关键字 89
6.2.3 get、set方法和JavaBean技术 91
6.3 封装类 92
6.4 继承 94
6.4.1 基类和派生类 95
6.4.2 super关键字 97
6.4.3 继承中的构造器 98
6.4.4 包的概念与环境变量的设置 100
6.4.5 范围限定修饰符 102
6.5 多态性 103
6.5.1 方法重载与重写 103
6.5.2 抽象类和抽象方法 106
6.5.3 final类和final方法 108
6.5.4 对象造型 108
6.6 Object类 109
6.6.1 toString()方法 109
6.6.2 equals()方法 110
6.7 接口 111
小结 112
练习 113
练习答案 121
第7章 异常处理 123
7.1 异常的基本概念 123
7.1.1 什么是异常 123
7.1.2 Java标准异常 123
7.1.3 Java异常处理机制 124
7.2 捕获异常 124
7.3 创建自定义异常 128
7.4 异常的尴尬 133
7.5 使用异常的注意事项 137
7.5.1 异常匹配 137
小结 139
练习 139
练习答案 142
第8章 输入与输出 143
8.1 Java输入/输出类和接口 143
8.2 File(文件类) 144
8.2.1 目录 146
8.2.2 使用FilenameFilter 147
8.2.3 listFiles()方法 148
8.2.4 创建目录 149
8.3 流类 149
8.4 字节流类 149
8.4.1 InputStream(输入流) 150
8.4.2 OutputStream(输出流) 150
8.4.3 FileInputStream(文件输入流) 150
8.4.4 FileOutputStream(文件输出流) 153
8.4.5 ByteArrayInputStream(字节数组输入流) 154
8.4.6 ByteArrayOutputStream(字节数组输出流) 155
8.4.7 过滤字节流 157
8.4.8 缓冲字节流 157
8.4.9 SequenceInputStream(顺序输入流) 161
8.4.10 PrintStream(打印流) 162
8.4.11 RandomAccessFile(随机访问文件类) 162
8.5 字符流 163
8.5.1 Reader 163
8.5.2 Writer 164
8.5.3 FileReader 164
8.5.4 FileWriter 165
8.5.5 CharArrayReader 166
8.5.6 CharArrayWriter 167
8.5.7 BufferedReader 168
8.5.8 BufferedWriter 169
8.5.9 PushbackReader 170
8.5.10 PrintWriter 171
8.6 使用流式输入/输出 171
8.6.1 用StreamTokenizer(流标记)来改善wc() 173
8.7 序列化 175
8.7.1 Serializable接口 176
8.7.2 Externalizable接口 176
8.7.3 ObjectOutput接口 176
8.7.4 ObjectOutputStream类 177
8.7.5 ObjectInput 177
8.7.6 ObjectInputStream 178
8.7.7 序列化示例 179
小结 181
练习 181
练习答案 183
第9章 图形界面 184
9.1 用AWT生成图形化用户界面 184
9.1.1 java.awt包 184
9.1.2 组件和容器 185
9.1.3 常用容器 186
9.1.4 LayoutManager布局管理器 187
9.2 AWT事件处理模型 193
9.2.1 事件类 195
9.2.2 事件监听器 196
9.2.3 AWT事件及其相应的监听器接口 197
9.2.4 事件适配器 200
9.3 AWT组件库 203
小结 208
练习 209
练习答案 210
第10章 Swing 211
10.1 Swing简介 211
10.1.1 概述 211
10.1.2 Swing的类层次结构 211
10.1.3 Swing组件的多样化 213
10.1.4 MVC体系结构 213
10.1.5 可存取性支持 213
10.1.6 支持键盘操作 213
10.1.7 设置边框 214
10.1.8 使用图标(Icon) 214
10.1.9 Swing程序结构简介 215
10.2 Swing组件和容器 216
10.2.1 组件的分类 216
10.2.2 使用Swing的基本规则 217
10.2.3 各种容器面板和组件 217
10.2.4 布局管理器 227
小结 229
第11章 applet 230
11.1 创建一个applet 230
11.1.1 applet开发步骤 230
11.1.2 Applet类 232
11.2 构建applet应用 235
11.2.1 使用applet响应事件 235
11.2.2 使用applet画图 237
11.2.3 使用applet构建多媒体应用 240
小结 249
第12章 多线程 250
12.1 使用Java创建多线程 251
12.1.1 Thread类 251
12.1.2 Runnable接口 252
12.1.3 synchronized关键字 253
12.2 线程调度 254
12.3 Java编程语言中的高级多线程支持 255
12.3.1 线程组 255
12.3.2 线程间的发信 255
12.3.3 将CPU让给另一个线程 256
12.3.4 守护线程 256
12.4 不提倡使用的方法 257
12.4.1 死锁 257
12.4.2 活锁 257
12.4.3 资源耗尽 257
12.5 调试大量的线程 257
12.6 限制线程优先级和调度 258
小结 258
练习 259
练习答案 262
第13章 Java Socket编程 263
13.1 Socket简介 263
13.2 Socket传输模式 263
13.3 创建Socket应用 264
13.3.1 创建客户端 264
13.3.2 创建服务器 268
13.3.3 Java数据报类 269
13.3.4 简单的Web服务器 272
小结 274
参考文献 275