Java 7入门经典PDF电子书下载
- 电子书积分:28 积分如何计算积分?
- 作 者:(美)霍尔顿著
- 出 版 社:北京:清华大学出版社
- 出版年份:2012
- ISBN:9787302289593
- 页数:1124 页
第1章Java简介 1
1.1 Java概览 1
1.2 Java语言的特性 2
1.3学习Java 2
1.3.1 Java程序 3
1.3.2 Java学习路线图 3
1.4 Java环境 4
1.5 Java中的面向对象编程 11
1.5.1什么是对象 12
1.5.2如何定义对象类 13
1.5.3对象操作 15
1.5.4 Java程序语句 17
1.5.5封装 17
1.5.6类与数据类型 18
1.5.7类与子类 18
1.5.8使用对象的优势 18
1.5.9标记 18
1.5.10泛型类 19
1.6 Java程序结构 19
1.6.1 Java的类库 19
1.6.2 Java应用程序 21
1.7 Java和Unicode 23
1.8小结 24
1.9资源 25
第2章 程序、数据、变量和计算 27
2.1数据和变量 27
2.1.1变量的命名 28
2.1.2变量名与Unicode 28
2.1.3变量与类型 29
2.2整数数据类型 29
2.3浮点数数据类型 33
2.3.1浮点数字面量 33
2.3.2声明浮点型变量 34
2.4固定变量的值 34
2.5算术运算 35
2.5.1整数计算 35
2.5.2整数除法和余数 40
2.5.3增量与减量运算符 40
2.5.4短整数类型的计算 42
2.5.5整数算术中的错误 43
2.5.6浮点计算 43
2.5.7其他浮点算术运算符 44
2.5.8浮点算术中的错误情况 44
2.5.9混合算术表达式 45
2.5.10显式转换 45
2.5.11赋值中的自动类型转换 46
2.6 op=运算符 46
2.7数学函数和常量 47
2.8存储字符 51
2.8.1字符转义序列 51
2.8.2字符算术 52
2.9位运算 54
2.9.1使用AND和OR运算符 55
2.9.2使用异或运算符 58
2.9.3位移操作 59
2.9.4位操作方法 62
2.10取值范围为固定整数值集合的变量 64
2.11布尔变量 66
2.12运算符的优先级 67
2.13程序注释 68
2.14小结 70
第3章 循环与逻辑 73
3.1决策 73
3.1.1比较 74
3.1.2 if语句 74
3.1.3嵌套的if语句 78
3.1.4比较枚举值 81
3.2逻辑运算符 81
3.2.1逻辑与操作 82
3.2.2逻辑或操作 84
3.2.3异或操作 84
3.2.4布尔非操作 84
3.2.5使用标准库方法测试字符 85
3.3条件运算符 86
3.4 switch语句 88
3.5变量的作用域 94
3.6循环 96
3.6.1循环的种类 97
3.6.2使用浮点值计数 103
3.6.3嵌套循环 103
3.6.4 continue语句 105
3.6.5带标签的continue语句 105
3.6.6在循环中使用break语句 107
3.7断言 112
3.8小结 114
第4章 数组与字符串 117
4.1数组 117
4.1.1数组变量 118
4.1.2定义数组 118
4.1.3数组长度 119
4.1.4访问数组元素 119
4.1.5重用数组变量 119
4.1.6初始化数组 120
4.1.7使用数组 123
4.1.8二维数组 126
4.1.9字符数组 130
4.2字符串 131
4.2.1字符串字面量 131
4.2.2创建String对象 132
4.2.3字符串数组 134
4.3字符串操作 135
4.3.1连接字符串 135
4.3.2比较字符串 139
4.3.3字符串排序 144
4.3.4访问字符串中的字符 146
4.3.5在字符串中查找字符 148
4.3.6查找子字符串 149
4.3.7提取子字符串 152
4.3.8 String对象的修改版本 156
4.3.9从String对象创建字符数组 157
4.3.10使用字符串执行基于集合的for循环 157
4.3.11在字符串中获取字节数组形式的字符 158
4.3.12从字符数组中创建String对象 158
4.4可变字符串 159
4.4.1创建StringBuffer对象 160
4.4.2 StringBuffer对象的容量 160
4.4.3为StringBuffer对象修改字符串的长度 162
4.4.4增长StringBuffer对象 162
4.4.5寻找子字符串的位置 164
4.4.6替换缓冲区中的子字符串 165
4.4.7插入字符串 165
4.4.8从可变字符串中提取字符 166
4.4.9可变字符串的其他操作 167
4.4.10从StringBuffer对象创建String对象 167
4.5小结 169
第5章 定义类 173
5.1类的定义 173
5.1.1类定义中的域 174
5.1.2类定义中的方法 175
5.1.3访问变量和方法 176
5.1.4 Final域 177
5.2定义类 177
5.3定义方法 178
5.3.1方法的返回值 179
5.3.2参数列表 179
5.3.3定义类方法 181
5.3.4访问方法中的类数据成员 182
5.3.5变量this 182
5.3.6初始化数据成员 183
5.4构造函数 186
5.4.1默认构造函数 187
5.4.2创建类的对象 188
5.5定义和使用类 190
5.6方法重载 192
5.6.1多个构造函数 193
5.6.2使用构造函数复制对象 196
5.7使用对象 196
5.8递归 202
5.9理解包 204
5.9.1对类打包 204
5.9.2将类从包添加到程序中 207
5.9.3程序中的包和名称 208
5.9.4导入静态类成员 208
5.9.5标准包 209
5.10类成员的访问控制 212
5.10.1使用访问属性 212
5.10.2设定访问属性 214
5.10.3选择访问属性 215
5.11嵌套类 220
5.11.1静态嵌套类 221
5.11.2使用非静态嵌套类 225
5.11.3使用非顶级类的嵌套类 227
5.11.4本地嵌套类 228
5.12小结 228
第6章 扩展类与继承 231
6.1使用已有的类 231
6.2类继承 233
6.2.1继承数据成员 233
6.2.2继承方法 234
6.2.3覆盖基类方法 237
6.3 @Override标记 239
6.4选择基类访问属性 239
6.5多态 240
6.6多级继承 246
6.7抽象类 246
6.8通用超类 247
6.8.1 toString()方法 249
6.8.2判定对象的类型 249
6.8.3复制对象 250
6.9接收可变数目参数的方法 255
6.10转换对象 256
6.10.1转换对象的时机 258
6.10.2识别对象 259
6.11枚举进阶 260
6.12设计类 264
6.13使用final修饰符 274
6.14接口 275
6.14.1在程序中封装常量 275
6.14.2用接口声明方法 278
6.14.3扩展接口 281
6.14.4使用接口 282
6.14.5将接口类型作为方法的参数使用 288
6.14.6在接口定义中嵌套类 289
6.14.7接口与真实环境 289
6.15匿名类 289
6.16小结 290
第7章 异常 293
7.1异常的基本思想 293
7.2异常类型 294
7.2.1 Error类型的异常 295
7.2.2 RuntimeException类型的异常 295
7.2.3 Exception类的其他子类 295
7.3处理异常 295
7.3.1设定方法能够抛出的异常 296
7.3.2处理异常 296
7.3.3 try代码块 296
7.3.4 catch代码块 297
7.3.5在一个代码块中捕获多种异常类型 301
7.3.6 finally代码块 301
7.3.7构造方法 302
7.3.8执行顺序 303
7.3.9嵌套的try代码块 309
7.3.10重新抛出异常 309
7.4异常对象 310
7.4.1 Throwable类 310
7.4.2标准异常 313
7.5定义自己的异常 313
7.5.1定义异常类 313
7.5.2抛出自己的异常 315
7.5.3异常的抛出策略 315
7.6小结 320
第8章 理解流 323
8.1流与输入输出操作 323
8.2流的概念 324
8.2.1输入流与输出流 324
8.2.2二进制流与字符流 325
8.3输入输出类 326
8.3.1基本的输入流操作 327
8.3.2缓冲输入流 327
8.3.3基本的输出流操作 328
8.3.4 Reader和Writer 329
8.4标准流 332
8.4.1从键盘读入数据 333
8.4.2写到命令行中 340
8.4.3 printf()方法 340
8.4.4将数据格式化为字符串 345
8.5小结 346
第9章 访问文件与目录 349
9.1访问文件系统 349
9.2使用Path对象 351
9.2.1访问系统属性 353
9.2.2设置系统属性 355
9.2.3测试和检查Path对象 355
9.2.4查询文件和目录 356
9.2.5获取文件属性 357
9.2.6其他的路径操作 360
9.3创建与删除目录和文件 361
9.3.1创建目录 361
9.3.2创建文件 363
9.3.3删除文件和目录 364
9.4获取目录内容 365
9.5关闭流 366
9.6移动与复制文件和目录 368
9.6.1对文件或目录重命名 369
9.6.2复制文件和目录 370
9.6.3遍历文件树 375
9.7小结 378
第10章 写文件 381
10.1文件I/O基础 381
10.2文件输出 382
10.3通过输出流写文件 383
10.4使用Writer写文件 386
10.5缓冲区 389
10.5.1缓冲区的容量 389
10.5.2缓冲区的位置和限制 390
10.5.3设置位置和限制 391
10.5.4创建缓冲区 392
10.5.5标记缓冲区 396
10.5.6缓冲区数据传输 397
10.5.7使用视图缓冲区 399
10.5.8准备缓冲区以输出到文件中 400
10.6使用通道写文件 401
10.6.1通道接口 402
10.6.2通道操作 403
10.6.3为文件获取通道 404
10.6.4通道写操作 404
10.7文件写操作 406
10.7.1将缓冲区的一部分写入到文件中 406
10.7.2文件的位置 409
10.7.3使用视图缓冲区加载字节缓冲区 410
10.7.4将变长字符串写入到文件中 410
10.7.5直接和间接缓冲区 416
10.7.6使用通道写入数值数据 417
10.7.7将混合数据写入到文件中 421
10.7.8从多个缓冲区写入 427
10.8强制将数据写入到设备中 430
10.9小结 431
第11章 读文件 433
11.1文件读取操作 433
11.1.1使用输入流读取文件 434
11.1.2使用缓冲读取器读取文件 437
11.2使用通道读取文件 439
11.2.1读取文本文件 441
11.2.2从缓冲区获取数据 442
11.2.3读取二进制数据 444
11.2.4读取混合数据 446
11.2.5压缩缓冲区 449
11.3复制文件 452
11.4随机访问文件 455
11.5内存映射文件 460
11.5.1锁住文件 463
11.5.2锁住文件的特定部分 465
11.5.3实用的文件加锁考量 465
11.6小结 468
第12章 序列化对象 471
12.1在文件中存储对象 471
12.2将对象写入到文件中 472
12.2.1将基本类型数据写入到对象流中 474
12.2.2实现Serializable接口 475
12.3从文件读取对象 478
12.3.1判定反序列化对象所属的类 481
12.3.2使用对象序列化 482
12.3.3手动序列化类 485
12.3.4序列化问题和困难 486
12.4小结 488
第13章 泛型 491
13.1什么是泛型 491
13.2定义泛型类 492
13.2.1实现泛型类 493
13.2.2实例化泛型类 495
13.2.3泛型类实例在运行时的类型 500
13.2.4泛型类实例之间的关系 502
13.2.5多个类型参数 502
13.2.6类型参数的作用域 503
13.2.7泛型类的静态域 504
13.2.8类型参数的边界 504
13.3泛型类和泛型接口 508
13.3.1实现针对容器类的基于集合的循环 508
13.3.2实现迭代器的功能 510
13.3.3二叉树的参数化类型 512
13.4原生类型的变量 523
13.5使用通配符类型参数 524
13.5.1针对通配符的约束 526
13.5.2深入Class类 529
13.6数组与参数化类型 530
13.7参数化方法 533
13.8参数化类型及继承 539
13.9小结 540
第14章 集合框架 543
14.1理解集合框架 543
14.2对象集合 544
14.2.1集 544
14.2.2序列 545
14.2.3地图 546
14.3迭代器 547
14.4集合类 549
14.5使用EnumSet 552
14.6数组集合类 554
14.6.1创建矢量 554
14.6.2存储对象 557
14.6.3检索对象 558
14.6.4移除对象 560
14.6.5搜索对象 561
14.6.6应用矢量 562
14.6.7对集合中的元素进行排序 566
14.6.8堆栈存储器 567
14.7链表 573
14.8使用地图 575
14.8.1散列过程 575
14.8.2把自己的类用作键 576
14.8.3创建HashMap容器 577
14.8.4存储、检索和移除对象 578
14.8.5处理地图中的所有元素 579
14.9小结 589
14.10练习 589
第15章 一组有用的类 591
15.1数组的实用方法 591
15.1.1填充数组 591
15.1.2复制数组 593
15.1.3比较数组 593
15.1.4数组的排序 594
15.1.5搜索数组 598
15.1.6将数组的内容用作字符串 600
15.2 Observable和Observer对象 601
15.2.1定义Observable对象的类 602
15.2.2 Observable类的方法 602
15.3生成随机数 605
15.4日期和时间 608
15.4.1 Date类 608
15.4.2解释Date对象 609
15.4.3公历 612
15.5正则表达式 618
15.6使用Scanner对象 637
15.6.1创建Scanner对象 637
15.6.2从Scanner对象获取输入 637
15.6.3测试标记 640
15.6.4为标记定义自己的模式 641
15.7小结 642
15.8练习 642
第16章 线程 645
16.1理解线程 645
16.1.1创建线程 647
16.1.2停止线程 652
16.1.3连接线程 653
16.1.4线程的调度 654
16.1.5实现Runnable接口 654
16.2管理线程 656
16.2.1同步 657
16.2.2死锁 672
16.3使用执行器 674
16.3.1使用执行器 674
16.3.2执行Callable〈V〉任务 675
16.3.3 Future〈V〉对象方法 675
16.3.4关闭线程池 676
16.4线程优先级 685
16.5小结 687
16.6练习 687
第17章 创建窗口 689
17.1 Java中的图形用户界面 689
17.2创建窗口 691
17.2.1设计窗口 692
17.2.2在GUI代码中禁止死锁 692
17.3组件和容器 696
17.3.1 Window和Frame组件 697
17.3.2 Window面板 698
17.4组件的基础知识 699
17.4.1组件的属性 699
17.4.2组件的大小和位置 700
17.4.3点和矩形 703
17.4.4组件的可视化特性 706
17.4.5 Swing组件 714
17.5使用Swing容器 716
17.6容器的布局管理器 718
17.6.1流布局管理器 719
17.6.2使用边界布局管理器 724
17.6.3使用卡片布局管理器 726
17.6.4使用网格布局管理器 728
17.6.5使用BoxLayout管理器 730
17.6.6使用GridBagLayout管理器 736
17.6.7使用SpringLayout管理器 743
17.7向窗口中添加菜单 750
17.7.1创建JMenu和JmenuItem对象 750
17.7.2创建菜单 751
17.7.3为菜单添加菜单项 753
17.7.4添加菜单快捷键和加速器 757
17.8小结 759
17.9练习 759
第18章 处理事件 761
18.1交互式Java程序 761
18.2事件处理过程 763
18.3事件类 764
18.3.1低级事件类 764
18.3.2使窗口处理自己的事件 766
18.3.3允许其他低级事件 768
18.3.4低级事件监听器 769
18.3.5使用适配器类 774
18.3.6语义事件 776
18.3.7语义事件监听器 776
18.4 applet中语义事件的处理 777
18.4.1其他事件处理方式 785
18.4.2处理低级事件和语义事件 787
18.5应用程序中的语义事件监听器 788
18.6使用动作 794
18.6.1 Action接口 794
18.6.2 Action方法 795
18.6.3把动作用作菜单项 796
18.6.4定义Action类 797
18.7添加工具栏 803
18.8添加菜单图标 812
18.9添加工具提示 813
18.10禁用动作 815
18.11小结 815
18.12练习 815
第19章 在窗口中绘图 817
19.1使用模型/视图体系结构 817
19.2组件坐标系统 821
19.3在组件上绘图 822
19.3.1图形环境 822
19.3.2绘图过程 825
19.3.3渲染操作 826
19.4形状 826
19.4.1定义点的类 826
19.4.2直线和矩形 827
19.4.3圆弧和椭圆 832
19.4.4曲线 835
19.4.5复杂路径 843
19.5填充图形 847
19.6管理图形 852
19.6.1存储模型中的图形 854
19.6.2绘制图形 855
19.7用鼠标绘图 856
19.8定义自己的图形类 864
19.8.1定义直线 864
19.8.2定义矩形 866
19.8.3定义圆 868
19.8.4绘制曲线 870
19.9修改光标 872
19.10小结 873
19.11练习 873
第20章 扩展GUI 875
20.1创建状态栏 875
20.1.1用于Sketcher的StatusBar类 876
20.1.2更新面板 878
20.2使用对话框 880
20.2.1模态对话框和非模态对话框 881
20.2.2一个简单的模态对话框 882
20.2.3即时消息对话框 885
20.2.4即时输入对话框 887
20.3使用对话框创建文本元素 889
20.3.1为文本定义菜单项和工具栏按钮 889
20.3.2定义文本类 891
20.3.3创建文本元素 892
20.4字体选择对话框 895
20.4.1 FontDialog类 896
20.4.2创建字体对话框按钮 896
20.4.3添加数据面板 898
20.4.4实现字体列表 899
20.4.5显示所选的字体 901
20.4.6使用分隔面板 902
20.4.7使用微调按钮 903
20.4.8使用单选按钮来选择字体样式 905
20.4.9监听单选按钮 906
20.5弹出式菜单 908
20.5.1显示弹出式菜单 910
20.5.2实现上下文菜单 913
20.7变换用户坐标系统 921
20.8选择自定义颜色 937
20.8.1使用缓存的图像 938
20.8.2使用JColorChooser对话框 938
20.8.3添加自定义颜色GUI 939
20.8.4显示颜色选择对话框 941
20.9小结 942
20.10练习 943
第21章 填充和打印文档 945
21.1串行化草图 945
21.1.1实现串行化 946
21.1.2串行化元素列表 946
21.2用来保存草图的基本架构 946
21.2.1指定文件名 946
21.2.2验证草图的目录 947
21.2.3记录草图是否修改 948
21.2.4处理File菜单事件 949
21.3使用文件选择器 950
21.3.1显示文件保存对话框 950
21.3.2显示文件打开对话框 951
21.3.3定制文件选择对话框 951
21.4实现文件操作 953
21.4.1创建定制的文件对话框 954
21.4.2实现保存操作 955
21.4.3实现Save As操作 959
21.4.4实现文件打开操作 961
21.4.5启动新草图 963
21.4.6禁止在关闭时丢失数据 964
21.5在Java中打印 966
21.5.1创建和使用PrinterJob对象 967
21.5.2打印页面 970
21.5.3打印整个草图 974
21.5.4横向打印 978
21.5.5提高打印性能 980
21.2.6实现页面设置 981
21.5.7使用Java打印对话框 984
21.5.8多页面文档的打印 987
21.5.9使用Book对象进行打印 995
21.5.10打印Swing组件 997
21.6小结 999
21.7练习 1000
第22章Java和XML 1001
22.1 XML 1001
22.1.1 XML的作用 1002
22.1.2在Java中处理XML 1002
22.2 XML文档结构 1002
22.2.1结构良好的XML文档 1003
22.2.2有效的XML文档 1004
22.2.3 XML文档中的元素 1004
22.2.4元素的属性 1008
22.3 XML中的数据结构 1011
22.4文档类型定义 1011
22.4.1声明DTD 1012
22.4.2定义DTD 1013
22.4.3 Sketcher的DTD 1019
22.5结构良好的文档的规则 1023
22.6 XML名称空间 1024
22.6.1名称空间声明 1024
22.6.2 XML名称空间和DTD 1026
22.7 XML模式 1026
22.7.1定义模式 1027
22.7.2定义模式元素 1028
22.7.3指定数据类型 1029
22.7.4定义复杂元素的属性 1029
22.7.5值的限制 1030
22.7.6定义属性组 1031
22.7.7指定一组元素选项 1031
22.8 Sketcher模式 1032
22.8.1定义直线元素 1033
22.8.2定义矩形元素类型 1035
22.8.3定义圆元素类型 1035
22.8.4定义曲线元素类型 1036
22.8.5定义文本元素类型 1037
22.8.6完整的Sketcher模式 1037
22.8.7使用模式的文档 1041
22.9用XML文档编程 1041
22.9.1 SAX处理 1042
22.9.2 DOM处理 1043
22.10访问解析器 1043
22.11使用SAX 1044
22.11.1解析器的属性和特征 1046
22.11.2用SAX解析文档 1048
22.11.3实现SAX处理程序 1049
22.11.4处理其他解析事件 1058
22.11.5解析模式实例文档 1059
22.12小结 1064
22.13练习 1064
第23章 创建和修改XML文档 1067
23.1文档对象模型 1067
23.2设置DOM解析器的特征 1069
23.3解析文档 1070
23.4导航Document对象树 1071
23.4.1节点类型 1072
23.4.2可忽略的空白和元素内容 1077
23.4.3访问属性 1078
23.5转换XML 1081
23.6创建Document对象 1085
23.7把草图存储为XML文档 1089
23.7.1添加元素节点 1090
23.7.2为完成的草图创建Document对象 1097
23.7.3把草图保存为XML文件 1099
23.8读取草图的XML表示 1103
23.8.1从XML中创建基类对象 1103
23.8.2从XML节点中创建元素 1105
23.8.3处理Import XML事件 1109
23.8.4读取XML文件 1110
23.8.5创建模型 1111
23.9小结 1114
23.10练习 1114
附录A关键字 1117
附录B计算机算术 1119
- 《国学经典诵读》(中国)严琼燕 2019
- 《优势谈判 15周年经典版》(美)罗杰·道森 2018
- 《HTML5从入门到精通 第3版》(中国)明日科技 2019
- 《少儿电子琴入门教程 双色图解版》灌木文化 2019
- 《日本面包师的经典配方》马妍责任编辑;王森 2019
- 《清至民国中国西北戏剧经典唱段汇辑 第8卷》孔令纪 2018
- 《小提琴经典练习曲简编 沃尔法特》丁芷诺,杨宝智 2019
- 《区块链DAPP开发入门、代码实现、场景应用》李万胜著 2019
- 《经典沐心 第2卷 智慧卷》宋伟 2016
- 《Python3从入门到实战》董洪伟 2019
- 《大学计算机实验指导及习题解答》曹成志,宋长龙 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《大学生心理健康与人生发展》王琳责任编辑;(中国)肖宇 2019
- 《大学英语四级考试全真试题 标准模拟 四级》汪开虎主编 2012
- 《大学英语教学的跨文化交际视角研究与创新发展》许丽云,刘枫,尚利明著 2020
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《复旦大学新闻学院教授学术丛书 新闻实务随想录》刘海贵 2019
- 《大学英语综合教程 1》王佃春,骆敏主编 2015
- 《大学物理简明教程 下 第2版》施卫主编 2020
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019