第1章 Java概述 1
1.1 Java语言特点 1
1.2 Java版本 2
1.3 Java环境构建 3
1.3.1 下载安装程序 3
1.3.2 安装及环境设置 3
1.4 开发Java程序 6
1.4.1 第一个Java应用程序 6
1.4.2 第一个Java小程序 8
1.5 Java其他开发环境 9
1.6 对初学者的建议 10
1.7 本章小结 11
1.8 上机实验 11
1.9 课后习题 11
第2章 Java语言基础 13
2.1 标识符和关键字 13
2.1.1 标识符 13
2.1.2 关键字 13
2.1.3 注释 14
2.2 基本数据类型 14
2.2.1 整型 15
2.2.2 浮点型 15
2.2.3 布尔型 15
2.2.4 字符型 16
2.2.5 数据类型转换 17
2.3 变量和常量 18
2.3.1 变量 18
2.3.2 常量 18
2.4 运算符和表达式 19
2.4.1 赋值运算符 19
2.4.2 算术运算符 19
2.4.3 关系运算符 20
2.4.4 逻辑运算符 21
2.4.5 复合赋值运算符 21
2.4.6 位运算符 22
2.4.7 条件运算符 22
2.4.8 表达式 22
2.5 数组 23
2.5.1 声明数组 23
2.5.2 创建数组 24
2.5.3 初始化数组 25
2.5.4 数组元素的使用 25
2.5.5 数组的length属性 27
2.6 枚举 28
2.7 控制语句 29
2.7.1 if语句 29
2.7.2 switch语句 31
2.7.3 for循环语句 32
2.7.4 while循环语句 34
2.7.5 do-while循环语句 34
2.7.6 跳转语句 35
2.8 本章小结 37
2.9 上机实验 37
2.10 课后习题 37
第3章 类与对象 39
3.1 面向对象程序设计 39
3.2 类 39
3.2.1 类定义的格式 39
3.2.2 简单的类定义 40
3.2.3 成员变量 41
3.2.4 成员方法 43
3.2.5 构造方法 43
3.2.6 方法重载 44
3.2.7 构造方法重载 45
3.3 对象 46
3.3.1 创建对象 46
3.3.2 使用对象 47
3.3.3 对象的引用 47
3.3.4 对象作为参数 48
3.3.5 返回对象 51
3.3.6 对象数组 51
3.4 访问控制权限 53
3.4.1 访问控制符public 53
3.4.2 访问控制符private 54
3.4.3 访问控制符protected 54
3.4.4 默认访问控制符 55
3.5 this关键字 55
3.6 static关键字 56
3.6.1 静态变量 56
3.6.2 静态方法 57
3.7 内部类 59
3.7.1 内部类的定义和使用 59
3.7.2 内部类定义在外嵌类的方法中 60
3.8 命令行参数 61
3.8.1 main()主方法 61
3.8.2 args参数 62
3.9 本章小结 63
3.10 上机实验 64
3.11 课后习题 65
第4章 继承 67
4.1 继承的基础 67
4.1.1 继承的格式 67
4.1.2 子类中构造方法的调用 68
4.1.3 访问控制符protected 70
4.2 super关键字 72
4.2.1 调用超类构造方法 72
4.2.2 调用超类的成员变量 74
4.3 多层继承 75
4.4 多态与继承 77
4.4.1 继承中的方法重载 77
4.4.2 方法重写 78
4.5 动态方法调度 80
4.6 abstract关键字 82
4.6.1 抽象类 83
4.6.2 抽象方法 84
4.7 final关键字 87
4.7.1 final常量 87
4.7.2 final方法 88
4.7.3 final类 89
4.8 本章小结 90
4.9 上机实验 90
4.10 课后习题 91
第5章 包和接口 95
5.1 包 95
5.1.1 定义包 95
5.1.2 ClassPath变量 97
5.1.3 导入包 98
5.1.4 包中的访问权限 99
5.1.5 static导入 100
5.2 接口 101
5.2.1 定义接口 101
5.2.2 实现接口 101
5.2.3 接口回调 105
5.2.4 接口作参数 107
5.2.5 继承接口 108
5.2.6 接口与抽象类的比较 111
5.3 本章小结 111
5.4 上机实验 111
5.5 课后习题 111
第6章 异常处理 113
6.1 异常格式 113
6.2 异常类 116
6.3 多个catch块 117
6.4 throw关键字 118
6.5 throws关键字 120
6.6 finally关键字 121
6.7 自定义异常类 121
6.8 本章小结 125
6.9 上机实验 125
6.10 课后习题 125
第7章 Java.lang包 127
7.1 Object类 127
7.2 基本数据类型的类包装 128
7.2.1 声明创建类包装的对象 128
7.2.2 常见方法 128
7.2.3 Char类特有的常见方法 132
7.3 Math类 135
7.4 String类 136
7.4.1 构造方法 136
7.4.2 常用方法 138
7.5 本章小结 142
7.6 上机实验 142
7.7 课后习题 143
第8章 多线程编程 144
8.1 线程 144
8.1.1 理解线程 144
8.1.2 线程的生命周期 145
8.2 Thread类 145
8.2.1 创建第一个线程 146
8.2.2 创建多个线程 147
8.3 Runnable接口 149
8.4 线程的常用方法 151
8.4.1 sleep()方法 151
8.4.2 interrupt()方法 152
8.4.3 yield()方法 153
8.4.4 join()方法 155
8.5 线程组 156
8.6 线程的优先级与调度 157
8.6.1 线程优先级 157
8.6.2 线程的调度 158
8.7 线程同步 160
8.7.1 synchronized关键字 160
8.7.2 synchronized语句块 163
8.8 线程通信 168
8.8.1 三个重要方法 168
8.8.2 举例 170
8.8.3 死锁 173
8.9 本章小结 173
8.10 上机实验 173
8.11 课后习题 174
第9章 输入/输出流 175
9.1 输入/输出流概述 175
9.2 字节流 178
9.2.1 InputStream和OutputStream 178
9.2.2 FileInputStream和FileOutputStream 178
9.2.3 DataInputStream和DataOutputStream 181
9.2.4 ObjectInputStream和ObjectOutputStream 184
9.2.5 PipedInputStream和PipedOutputStream 186
9.2.6 AudioInputStream 189
9.3 字符流 190
9.3.1 Reader和Writer 190
9.3.2 InputStreamReader和OutputStreamWriter 191
9.3.3 BufferReader和BufferWriter 192
9.3.4 FileReader和FileWriter 194
9.4 文件类 196
9.4.1 构造方法和常见方法 196
9.4.2 文件的创建与删除 197
9.4.3 目录 198
9.4.4 RandomAccessFile类 200
9.4.5 FileNameFilter和FileFilter接口 202
9.5 本章小结 205
9.6 上机实验 205
9.7 课后习题 205
第10章 Swing 206
10.1 Swing简介 206
10.2 Swing组件和容器 207
10.3 委托事件模型 209
10.4 JComponent类 211
10.5 布局管理器 212
10.5.1 FlowLayout布局 212
10.5.2 BorderLayout布局 213
10.5.3 GridLayout布局 215
10.5.4 CardLayout布局 216
10.5.5 GridBagLayout布局 218
10.5.6 自定义布局 221
10.6 框架和面板 223
10.6.1 框架 223
10.6.2 面板 226
10.7 文本框、文本区和密码框 228
10.7.1 文本框 228
10.7.2 文本区 231
10.7.3 密码框 234
10.8 按钮和标签 236
10.8.1 按钮 236
10.8.2 标签 238
10.9 单选按钮、复选框、列表框和组合框 239
10.9.1 单选按钮 239
10.9.2 复选框 241
10.9.3 列表框 243
10.9.4 组合框 245
10.10 菜单 247
10.10.1 菜单栏 248
10.10.2 菜单 248
10.10.3 菜单项 249
10.10.4 复选框菜单项 252
10.10.5 单选按钮菜单项 253
10.10.6 弹出菜单 255
10.11 对话框 258
10.11.1 JoptionPane类 258
10.11.2 JDialog类 260
10.12 鼠标事件 262
10.12.1 MouseEvent事件 262
10.12.2 MouseWheelEvent事件 266
10.13 键盘事件 268
10.14 适配器 273
10.15 本章小结 275
10.16 上机实验 276
10.17 课后习题 277
第11章 Applet程序 279
11.1 Applet基础 279
11.2 HTML和Applet 279
11.2.1 常用HTML标记 279
11.2.2 嵌入Applet 280
11.3 Applet类 282
11.3.1 Applet类简介 282
11.3.2 Applet生命周期 283
11.4 Applet应用 284
11.4.1 在Applet中插入图片 284
11.4.2 在Applet中插入音乐 285
11.5 Java应用程序和Applet程序的转换 286
11.6 本章小结 289
11.7 上机实验 289
11.8 课后习题 290
第12章 网络编程 291
12.1 网络预备知识 291
12.1.1 IP地址 291
12.1.2 InetAddress类 291
12.2 网络编程简介 292
12.3 基于URL的网络连接 293
12.3.1 URL类的构造方法 294
12.3.2 URL类的常用方法 294
12.3.3 读取URL资源 295
12.4 套接字Socket通信 296
12.4.1 Socket简介 296
12.4.2 Socket类 296
12.4.3 ServerSocket类 297
12.4.4 Socket通信 298
12.5 UDP数据报通信 301
12.5.1 DatagramPacket类 301
12.5.2 DatagramSocket类 302
12.5.3 UDP通信实例 302
12.6 本章小结 306
12.7 上机实验 307
12.8 课后习题 307
参考文献 308