第1章 Java的开发环境和运行环境 1
1.1 Java Development Kit(JDK) 1
1.1.1 JDK的主要版本 1
1.1.2 JDK的下载、安装与配置 2
1.1.3 使用JDK开发Java程序的步骤 3
1.2 Eclipse集成开发环境 4
1.2.1 Eclipse的下载、安装与汉化 4
1.2.2 使用Eclipse开发Java程序的步骤 5
1.3 Java运行环境 9
习题 10
第2章 Java语言基础 11
2.1 数据类型 11
2.1.1 整型 11
2.1.2 实型 13
2.1.3 字符型 14
2.1.4 布尔型 16
2.2 运算符和表达式 17
2.2.1 算术表达式 17
2.2.2 赋值表达式 18
2.2.3 关系表达式 19
2.2.4 逻辑表达式 19
2.2.5 位运算表达式 20
2.2.6 运算符的优先级和结合性 20
2.3 语句 21
2.3.1 输出语句 22
2.3.2 输入语句 23
2.3.3 分支语句 24
2.3.4 循环语句 29
习题 36
第3章 面向对象的程序设计方法 38
3.1 对象和类 38
3.1.1 包 39
3.1.2 类的定义 42
3.1.3 对象和对象引用 43
3.1.4 成员变量 45
3.1.5 构造方法 48
3.1.6 成员方法 50
3.2 继承 53
3.2.1 继承的概念 53
3.2.2 继承的实现 53
3.2.3 方法重写和属性隐藏 59
3.2.4 关键字super和this 61
3.2.5 抽象类 63
3.2.6 继承性和多态性 65
3.3 接口 71
3.3.1 接口的定义 71
3.3.2 接口的实现 71
3.3.3 接口和多态 72
3.4 UML类图 74
3.4.1 UML类图 74
3.4.2 类之间常见关系 75
3.5 嵌套类 76
3.5.1 内部类 77
3.5.2 静态嵌套类 82
习题 83
第4章 Java类库中的常用类 85
4.1 Object类 85
4.2 数组和java.util.Arrays类 94
4.2.1 数组的定义 94
4.2.2 数组的常用操作 95
4.2.3 二维数组 102
4.2.4 java.util.Arrays类 103
4.3 字符串类 108
4.3.1 String类 108
4.3.2 StringBuffer类 112
4.4 数值处理相关类 114
4.4.1 基本数据类型包装类 114
4.4.2 数字格式化 117
4.4.3 Math类 121
4.5 日期和时间 122
4.5.1 获取系统日期和时间 122
4.5.2 设置日期和时间格式 122
4.5.3 日期和时间的运算 125
4.5.4 java.time包 129
4.6 异常处理 133
4.6.1 异常的概念 133
4.6.2 常见的异常 135
4.6.3 异常的处理 135
4.6.4 自定义异常类 140
习题 141
第5章 图形用户界面 143
5.1 Swing组件概述 143
5.2 图形用户界面的创建过程 145
5.2.1 创建框架 145
5.2.2 了解框架结构并添加组件 146
5.2.3 事件处理 162
5.3 布局管理 168
5.3.1 BorderLayout 168
5.3.2 FlowLayout 170
5.3.3 GridLayout 172
5.3.4 GridBagLayout 174
5.4 常用Swing组件 182
5.4.1 基本组件 184
5.4.2 对话框 205
5.4.3 中间容器 208
5.5 绘图 217
5.5.1 概述 217
5.5.2 Graphics 218
5.5.3 Graphics2D 220
习题 230
第6章 多线程 232
6.1 进程和线程 232
6.2 实现多线程 235
6.2.1 继承Thread类 235
6.2.2 实现Runnable接口 238
6.3 线程共享数据与同步 242
6.3.1 代码相同的线程共享数据 242
6.3.2 代码不同的线程共享数据 249
6.3.3 线程协作 256
6.3.4 死锁问题 265
6.4 线程的生命周期 267
6.5 综合应用实例一射击游戏 268
习题 277
第7章 泛型和集合框架 278
7.1 泛型 278
7.1.1 泛型的概念 278
7.1.2 泛型类 279
7.1.3 泛型方法 281
7.1.4 通配符 282
7.1.5 受限制的泛型 283
7.2 集合框架 286
7.2.1 集合框架概述 286
7.2.2 ArrayList和Vector 289
7.2.3 迭代器和foreach 292
7.2.4 Hashtable和HashMap 294
习题 299
第8章 输入输出 301
8.1 输入输出流 301
8.2 字节流和字符流 302
8.2.1 字节流 302
8.2.2 字符流 304
8.3 文件读写 305
8.3.1 读写文本文件 305
8.3.2 读写二进制文件 309
8.3.3 随机读写文件 311
8.4 处理流 314
8.4.1 数据流 314
8.4.2 缓冲流 315
8.4.3 转换流 317
8.5 标准输入输出 319
8.6 对象序列化 322
习题 324
第9章 网络编程基础 325
9.1 网络编程的基本概念 325
9.1.1 IP地址、域名和端口 325
9.1.2 网络协议 326
9.1.3 套接字 326
9.2 URL编程 326
9.2.1 URL的概念 326
9.2.2 URL类 327
9.2.3 使用URL类获取网络资源 328
9.3 基于TCP的Socket编程 331
9.3.1 ServerSocket类 331
9.3.2 Socket类 332
9.3.3 一对一Socket通信 333
9.3.4 一对多Socket通信 340
9.4 基于UDP的Socket编程 346
习题 350
第10章 JDBC数据库编程 352
10.1 JDBC概述 352
10.2 数据库编程 353
10.2.1 注册JDBC驱动程序 353
10.2.2 连接数据库 355
10.2.3 执行SQL语句 356
10.2.4 处理结果集 357
10.3 使用JTable呈现数据 363
10.3.1 简单表格 363
10.3.2 使用数据模型创建表格 366
10.3.3 使用JTable呈现结果集 369
习题 376