第1章 Java语言概述 1
1.1面向对象程序设计 1
1.1.1面向对象基本概念 1
1.1.2面向对象基本特性 2
1.2 Java语言 3
1.2.1 Java语言的发展 3
1.2.2 Java语言的特点 4
1.2.3 Java语言的开发平台 5
1.2.4 Java程序的开发 6
1.3本章小结 11
1.4习题 12
第2章 Java语言基础 13
2.1标识符和保留字 13
2.1.1标识符 13
2.1.2保留字 13
2.2变量和数组 14
2.2.1直接量和变量 14
2.2.2基本数据类型 15
2.2.3枚举类型 17
2.2.4数组 18
2.3运算符 20
2.4表达式和语句 22
2.5 Java的标准输入和输出操作 24
2.6流程控制语句 26
2.6.1条件控制语句 27
2.6.2循环语句 30
2.6.3转向语句 33
2.7本章小结 36
2.8习题 36
第3章 字符串 38
3.1字符和字符串 38
3.2 String类(java.lang.String) 38
3.2.1 String的常用构造方法 38
3.2.2 String常用的方法 40
3.3 StringBuffer类(java.lang.StringBuffer) 46
3.3.1 StringBuffer类的构造方法 46
3.3.2 StringBuffer的常用方法 47
3.4 StringBuilder类(java.lang.StringBuilder) 52
3.4.1 StringBuilder类的构造方法 52
3.4.2 StringBuilder类的常用方法 53
3.5应用实例——扑克游戏 55
3.6本章小结 57
3.7习题 57
第4章 类和对象 58
4.1面向对象编程基础 58
4.1.1对象和类的基本概念 58
4.1.2类的声明 59
4.1.3类的访问控制 61
4.1.4类的非访问修饰符 62
4.1.5构造方法 65
4.1.6类的成员 71
4.1.7对象的实现 78
4.2包 80
4.2.1包的创建 80
4.2.2包的应用 82
4.3 this关键字 83
4.3.1用this关键字访问对象的成员 83
4.3.2用this关键字调用构造方法 85
4.4 super关键字 86
4.5 finalize()方法 89
4.5.1 finalize()方法的特点 89
4.5.2 finalize()方法的用途 91
4.6嵌套类 92
4.6.1静态嵌套类 92
4.6.2内部类 94
4.7抽象类 98
4.7.1抽象方法 98
4.7.2抽象类 98
4.8应用实例——扑克牌游戏 100
4.9本章小结 107
4.10习题 108
第5章 继承和多态 109
5.1继承 109
5.1.1父类和子类 110
5.1.2继承的实现 110
5.2接口 114
5.2.1接口的格式定义 115
5.2.2接口的实现 116
5.2.3接口和抽象类的区别 119
5.3多态性 120
5.3.1动态绑定 121
5.3.2方法的重载 122
5.3.3方法的覆盖和隐藏 123
5.3.4数据成员的隐藏 131
5.3.5运行多态性的实现 135
5.4应用实例——模拟纸牌游戏 137
5.5本章小结 145
5.6习题 145
第6章 集合和泛型 147
6.1 Java的集合框架 147
6.1.1访问Collection集合 148
6.1.2集合与数组的转换 148
6.2 Set集 150
6.2.1 java.util.HashSet<E> 150
6.2.2 java.util.TreeSet<E> 152
6.2.3 java.util.Linked HashSet<E> 154
6.3列表和队列 156
6.3.1 java.util.ArrayList<E> 157
6.3.2 java.util.LinkedList<E> 159
6.4 java.util.Map<K,V> 163
6.5 泛型 166
6.5.1定义泛型类 166
6.5.2类型变量的限制 168
6.5.3泛型实例创建的类型推断 168
6.6集合的算法 169
6.7应用实例——纸牌游戏 172
6.8本章小结 181
6.9习题 181
第7章 Java的GUI编程和事件处理 182
7.1 Java基础类概述 182
7.2 Swing包的GUI组件 184
7.2.1框架窗口 184
7.2.2标签和文本处理组件 186
7.2.3按钮和选择交互处理的组件 190
7.2.4面板 195
7.2.5工具条 197
7.2.6菜单的制作 198
7.2.7多文档界面制作 203
7.2.8树组件 206
7.2.9表格组件 208
7.3布局管理器 210
7.3.1流布局管理器 210
7.3.2边界布局管理方式 211
7.3.3卡片布局管理器 214
7.3.4网格布局管理器 216
7.3.5网格包布局管理器 217
7.3.6手工布局处理 221
7.4事件处理概述 222
7.4.1事件处理模式 222
7.4.2事件处理类型 223
7.4.3常用的事件处理 223
7.4.4事件适配器 230
7.4.5 Action动作 232
7.5 Java图形处理和Java 2D 235
7.5.1 Java的颜色处理 235
7.5.2 Java的字体处理 235
7.5.3 Java 2D和图形处理 238
7.6应用实例——纸牌游戏界面设计 247
7.7本章小结 257
7.8习题 257
第8章 异常和错误处理 258
8.1 Java的错误处理 258
8.2异常和异常类 258
8.2.1异常的定义 259
8.2.2异常的分类 259
8.3异常处理机制 262
8.3.1自定义异常类 262
8.3.2异常的抛出 263
8.3.3异常的捕捉 265
8.3.4 try-with-resource语句 267
8.3.5链式异常 268
8.4断言处理机制 270
8.4.1断言的语法 270
8.4.2应用断言 271
8.4.3捕捉断言错误 274
8.5 Java标准日志处理 275
8.5.1 Java日志框架 275
8.5.2创建日志对象 276
8.5.3日志的级别 276
8.5.4记录日志 277
8.5.5日志处理器 278
8.5.6日志的格式化 279
8.6应用实例——扑克牌游戏的异常处理 280
8.7本章小结 284
8.8习题 284
第9章 多线程和并发处理 286
9.1 Java线程 286
9.1.1 Thread类 287
9.1.2 Runnable接口 290
9.1.3线程生命周期 292
9.1.4线程组 295
9.2线程的同步 297
9.2.1竞争条件 297
9.2.2同步方法和同步语句 300
9.3显式锁和条件对象 304
9.4阻塞队列 308
9.5传输队列 311
9.6线程池 314
9.7 Fork/Join模式 316
9.8应用实例——扑克牌游戏的线程处理 319
9.9本章小结 323
9.10习题 323
第10章 文件和流 325
10.1文件相关类 325
10.2 Java的I/O流 328
10.2.1字符流类 329
10.2.2字节流类 332
10.2.3对象流和对象的序列化 335
10.3随机访问文件 339
10.4文件的输入输出处理 341
10.4.1 NIO 2.0框架的路径 341
10.4.2 java.nio.file.Files实现文件处理 345
10.5应用实例——扑克牌游戏的文件处理 359
10.6本章小结 368
10.7习题 369
第11章 数据库编程 370
11.1 JDBC的概述 370
11.2 SQL结构化的查询语言 372
11.2.1常用的SQL语句 372
11.2.2 SQL的存储过程 374
11.3 JDBC访问数据库 374
11.3.1导入JDBC类和接口 374
11.3.2装载驱动程序 375
11.3.3连接数据库 376
11.3.4创建语句对象和执行语句 379
11.3.5处理结果 390
11.3.6关闭连接 402
11.4事务处理 410
11.5应用实例——扑克牌游戏的数据库处理 411
11.5.1数据库设计 411
11.5.2扑克牌游戏的数据库实现 414
11.6本章小结 429
11.7习题 429
第12章 网络编程 431
12.1 Java网络编程基础 431
12.1.1 TCP/IP协议 431
12.1.2套接字和端口 432
12.1.3 Java网络编程包 432
12.2通过URL访问网络资源 433
12.2.1 URL类 433
12.2.2 JEditorPane显示HTML文件 435
12.3面向连接的TCP协议编程 438
12.3.1 java.net.InetAddress类 438
12.3.2 java.net.Socket类 440
12.3.3 java.net.ServerSocket类 443
12.3.4 TCP协议编程实现 445
12.4面向非连接的UDP协议编程 456
12.4.1 java.net.DatagramPacket类 456
12.4.2 java.net.DatagramSocket类 457
12.4.3 java.net.MulticastSocket类 458
12.4.4 UDP协议通信编程 459
12.5应用实例——双人扑克牌游戏 467
12.6本章小结 481
12.7习题 482
第13章 Java与XML 483
13.1 XML概述 483
13.1.1 XML文件结构 483
13.1.2 XML的相关技术 486
13.2处理XML的常见Java API 486
13.2.1 JAXP API 486
13.2.2 DOM API处理XML 487
13.2.3 SAX API 497
13.2.4 StAX API 501
13.3应用实例——扑克游戏的配置处理 512
13.4本章小结 516
13.5习题 516