第1章 Java快速入门 1
1.1 Java的故事 1
1.2 JDK的安装和设置 2
1.3 使用文本编辑器输入和编辑源程序 2
1.4 编译 3
1.5 独立应用程序的运行 4
1.6 Applet小程序的运行和测试 4
1.6.1 在网页上运行小应用程序 5
1.6.2 侧试小应用程序 6
1.7 Windows应用程序的运行 7
1.8 Java程序结构分析 8
1.9 本章小结 9
第2章 Java基本语法 10
2.1 注释 10
2.2 标识符和保留字 11
2.3 基本数据类型 11
2.3.1 整数类型和整数变量的声明 11
2.3.2 浮点型和浮点变量的声明 12
2.3.3 字符型和字符变量的声明 12
2.3.4 布尔型和布尔变量的声明 13
2.4 符号常量 13
2.5 运算符 14
2.5.1 数学运算符 14
2.5.2 赋值运算 15
2.5.3 类型转换 16
2.5.4 自增与自减运算符 17
2.5.5 比较运算符 18
2.5.6 逻辑运算符 19
2.5.7 位运算符 21
2.5.8 移位运算符 21
2.6 程序流程控制语句 21
2.6.1 if语句 21
2.6.2 switch语句 22
2.6.3 while语句 24
2.6.4 do while语句 24
2.6.5 for语句 25
2.7 本章小结 26
第3章 面向对象的程序设计(Ⅰ) 27
3.1 类的定义和使用 27
3.1.1 最简单的类 27
3.1.2 类的数据 28
3.1.3 类的函数(方法) 28
3.1.4 完整的类的例子 29
3.1.5 创建类的对象和运行程序 30
3.1.6 程序代码的书写格式 32
3.1.7 小结 32
3.2 对象、引用和作用域 33
3.2.1 对象和引用 33
3.2.2 变量的作用域 37
3.3 基本数据类型和对象的初始化 39
3.3.1 基本数据类型成员的初始化 39
3.3.2 初始化方法中的变量 43
3.3.3 对象和引用的初始化 44
3.4 类的构造方法和重载 47
3.4.1 类的构造方法 48
3.4.2 重载方法与默认构造方法 49
3.5 数组与字符串 52
3.5.1 数组基础 52
3.5.2 对象数组 54
3.5.3 多维数组 57
3.5.4 字符串 58
3.5.5 main方法中的参数 59
3.6 类的继承、组合与重置方法 60
3.6.1 类的继承和重置方法 60
3.6.2 超类与子类不在一个目录的情况 62
3.6.3 在一个文件中继承类 62
3.6.4 为每个类添加main方法 64
3.6.5 类与其超类的构造方法的调用 66
3.6.6 不用继承使用另外一个类的功能 69
3.6.7 类作为另外一个类的成员:类的组合 71
3.6.8 滥用重置 72
3.6.9 重置与重载 74
3.7 本章小结 76
第4章 面向对象的程序设计(Ⅱ) 77
4.1 类的转换:超类与继承类的关系 77
4.2 import语句和软件包 78
4.2.1 建立软件包 79
4.2.2 使用软件包 79
4.3 static关键字 80
4.4 对象的初始化 82
4.4.1 非静态对象的初始化 82
4.4.2 静态对象的初始化 84
4.4.3 继承时的构造方法 87
4.4.4 静态变量初始化块 89
4.4.5 非静态变量初始化块 89
4.5 this和super关键字 90
4.6 存取控制:public、private和protected关键字 92
4.7 多态性 94
4.8 抽象类和抽象方法 99
4.9 final关键字 100
4.10 接口interface与多重继承 103
4.10.1 接口基础 103
4.10.2 多重继承 105
4.10.3 接口的嵌入 109
4.10.4 接口的转换 110
4.11 类的嵌入(内部类) 111
4.11.1 内部类导引 111
4.11.2 继承内部类 115
4.12 Java的存储结构 116
4.13 本章小结 117
第5章 通过Java文档了解类的使用 118
5.1 Java文档的使用 118
5.1.1 Overview页 120
5.1.2 Package页面 120
5.1.3 Class页面 121
5.1.4 Use页面 123
5.1.5 Tree页面 123
5.1.6 Deprecated API页面 124
5.1.7 Index页面 124
5.2 实例分析 125
5.2.1 实例分析一 125
5.2.2 实例分析二 126
5.3 JDK自带的演示程序 127
5.4 使用Java Doc生成自己的程序文档 128
5.5 本章小结 131
第6章 程序的异常处理 132
6.1 异常入门 132
6.2 基本的异常处理 133
6.2.1 try和catch 134
6.2.2 获得异常的有关信息 136
6.2.3 抛出异常 137
6.2.4 异常类的构造方法 139
6.3 在其他地方处理异常 140
6.3.1 在其他方法中处理异常 140
6.3.2 重新抛出异常 143
6.4 建立自己的异常类 147
6.5 不捕获异常时的情况 151
6.6 异常类的其他主题 154
6.6.1 Throwable和Error类 154
6.6.2 捕获多个可能发生的异常 156
6.6.3 finally关键字 159
6.6.4 Java软件包中抛出异常的方法 162
6.7 本章小结 162
第7章 文件管理与输入输出 163
7.1 文件管理 163
7.2 输入与输出 167
7.2.1 InputStream类 168
7.2.2 OutputStream类 171
7.2.3 Reader和Writer类 172
7.2.4 System类 173
7.2.5 标准输入和输出的重定向 175
7.2.6 缓冲 176
7.2.7 RandomAccessFile类 177
7.3 压缩类 181
7.4 本章小结 185
第8章 Java小应用程序和多媒体程序设计 186
8.1 Applet类和小应用程序的运行机制 186
8.2 HTML文件与小应用程序 188
8.3 Java图形设计 189
8.3.1 图形坐标系 190
8.3.2 文本输出 190
8.3.3 使用颜色 191
8.3.4 绘图 192
8.3.5 得到当前字体的属性 193
8.3.6 使用指定的字体 195
8.3.7 得到系统上可用的字体 196
8.4 显示图像与URL类 198
8.5 声音的播放 201
8.5.1 网页打开时自动播放声音 201
8.5.2 声音播放控制 202
8.6 本章小结 204
第9章 Java构件 205
9.1 构件和JApplet类 205
9.2 建立构件和选择构件的布局 207
9.3 布局管理器 210
9.3.1 BorderLayout类 211
9.3.2 F1owLayout类 212
9.3.3 GridLayout类 213
9.3.4 BoxLayout类 214
9.4 Java构件一览 217
9.4.1 Button按钮 217
9.4.2 JCheckBox复选框 219
9.4.3 ButtonGroup按钮组 220
9.4.4 JTextField文本框 221
9.4.5 JSlider标尺 222
9.4.6 JProgressBar进度指示器 224
9.4.7 文本区域构件和滚动条 226
9.4.8 JComboBox下拉列表 230
9.4.9 JList列表框 231
9.4.10 JTree树型图 232
9.4.11 JTable表格 233
9.4.12 JTabbedPane标签面板和JPanel面板构件 235
9.4.13 JMenuBar菜单 238
9.4.14 JPopupMenu弹出菜单 241
9.4.15 JOptionPane弹出式窗口 242
9.5 Java构件的装饰 247
9.5.1 带图像和背景的构件 247
9.5.2 构件的提示文字 248
9.5.3 构件的边框 249
9.5.4 构件上使用HTML标记 249
9.5.5 在构件中绘图 251
9.6 本章小结 253
第10章 Java构件的容器和Windows应用程序 254
10.1 JPanel类(面板) 254
10.2 JWindow和JFrame窗口 255
10.3 JDialog对话框窗口 258
10.4 Windows应用程序的设计 261
10.4.1 设计Windows应用程序 261
10.4.2 设计也可作为小应用程序运行的Windows应用程序 263
10.4.3 只能在Windows应用程序中使用的类:JFileChooser类 265
10.5 本章小结 271
第11章 交互与事件处理 272
11.1 事件和交互基础 272
11.2 键盘事件 276
11.3 焦点事件 279
11.4 鼠标事件 280
11.4.1 MouseMotionListener接口 281
11.4.2 MouseListener接口 283
11.5 选择适当的事件和确定引起事件的构件 284
11.5.1 选择适当的事件类型 285
11.5.2 确定事件发生的构件 289
11.6 构件事件实例 292
11.6.1 窗口事件 292
11.6.2 单选按钮组事件 296
11.6.3 复选框事件 297
11.6.4 下拉列表事件 299
11.6.5 标尺事件 300
11.6.6 标签面板事件 303
11.6.7 菜单事件 305
11.6.8 文本事件 308
11.6.9 绘图事件 310
11.7 本章小结 312
第12章 线程 313
12.1 线程入门 313
12.2 图形用户界面程序中的线程 318
12.3 Runnable接口 321
12.4 线程的同步 322
12.5 线程的调度和优先级 329
12.6 本章小结 332
第13章 网络编程基础 333
13.1 小应用程序和URL类 333
13.1.1 在小应用程序中打开一个网页 333
13.1.2 从URL上读入文件的内容 335
13.2 IP地址与InetAddress类 337
13.2.1 计算机名和IP地址 337
13.2.2 InetAddress类中的方法 340
13.3 Socket网络编程 343
13.3.1 建立连接 344
13.3.2 Socket的通讯 347
13.3.3 多线程的服务器程序 350
13.4 本章小结 355
第14章 Java的优势 356