图书介绍
Java完美编程 第3版PDF|Epub|txt|kindle电子书版本网盘下载
![Java完美编程 第3版](https://www.shukui.net/cover/3/32225695.jpg)
- (美)萨维奇(Savitch,W.)著;施平安,李牧译 著
- 出版社: 北京:清华大学出版社
- ISBN:9787302176336
- 出版时间:2008
- 标注页数:815页
- 文件大小:197MB
- 文件页数:835页
- 主题词:JAVA语言-程序设计-教材
PDF下载
下载说明
Java完美编程 第3版PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第1章 Java入门1
引言2
前导知识2
1.1 Java简介2
1.1.1 Java语言的起源(选读)2
1.1.2 对象和方法3
1.1.3 applet(选读)4
1.1.4 Java应用程序实例4
自测题6
1.1.5 字节码和Java虚拟机6
1.1.6 类装载器(选读)8
1.1.7 编译一个Java程序或类8
1.1.8 运行一个Java程序8
自测题10
1.2 表达式和赋值语句10
1.2.1 标识符10
1.2.2 变量11
1.2.3 赋值语句12
1.2.4 再论赋值语句(选读)14
自测题15
1.2.5 赋值兼容性15
1.2.6 常量16
1.2.7 算术运算符和表达式17
1.2.8 括号和优先规则(选读)18
1.2.9 整数和浮点数除法19
自测题21
1.2.10 类型转换22
1.2.11 自增运算符和自减运算符22
自测题24
1.3 String类24
1.3.1 字符串常量和变量25
1.3.2 字符串连接25
1.3.3 类26
1.3.4 String类的方法27
1.3.5 转义序列31
1.3.6 字符串处理32
1.3.7 Unicode字符集(选读)32
自测题33
1.4 程序风格33
1.4.1 命名常量34
1.4.2 Java拼写约定35
1.4.3 注释36
1.4.4 缩进37
自测题37
小结38
自测题参考答案38
编程项目40
第2章 控制台输入和输出43
引言44
前导知识44
2.1 屏幕输出44
2.1.1 System.out.println44
自测题46
2.1.2 用printf格式化输出46
自测题50
2.1.3 使用NumberFormat格式化金额51
2.1.4 导入包和类53
自测题54
2.1.5 DecimalFormat类(选读)54
2.2 使用Scanner类的控制台输入57
2.2.1 Scanner类57
2.2.2 空字符串62
自测题63
2.2.3 其他输入分隔符63
自测题64
小结66
自测题参考答案66
编程项目67
第3章 控制流69
引言70
前导知识70
3.1 分支结构70
3.1.1 if-else语句70
3.1.2 省略else71
3.1.3 复合语句71
3.1.4 嵌套语句73
自测题73
3.1.5 多分支if-else语句73
自测题75
3.1.6 switch语句75
自测题78
3.1.7 条件运算符(选读)79
3.2 布尔表达式79
3.2.1 简单的布尔表达式79
3.2.2 字典顺序和字母顺序81
自测题83
3.2.3 构造布尔表达式83
自测题84
3.2.4 布尔表达式计算85
3.2.5 短路求值与完整求值87
3.2.6 优先级和结合规则88
自测题93
3.3 循环94
3.3.1 while语句和do-while语句94
3.3.2 算法和伪码96
自测题97
3.3.3 for语句98
3.3.4 for语句中的逗号100
3.3.5 嵌套循环103
自测题103
3.3.6 break语句和continue语句(选读)105
3.3.7 exit语句106
3.4 调试106
3.4.1 循环bug106
3.4.2 跟踪变量107
3.4.3 常规调试技术108
3.4.4 预防性编码111
3.4.5 断言检查(选读)112
自测题114
小结115
自测题参考答案115
编程项目118
第4章 类的定义(Ⅰ)121
引言122
前导知识122
4.1 类的定义122
4.1.1 实例变量和方法124
自测题126
4.1.2 再论方法126
自测题130
4.1.3 局部变量131
4.1.4 代码块131
自测题132
4.1.5 原语类型的参数132
自测题137
4.1.6 类参数的简单情况137
4.1.7 this参数137
自测题139
4.1.8 返回布尔值的方法139
4.1.9 equals和toString方法141
4.1.10 递归方法143
自测题144
4.2 信息隐藏和封装145
4.2.1 public和private修饰符145
自测题149
4.2.2 取值和赋值方法149
4.2.3 前条件和后条件152
自测题152
4.3 重载152
自测题157
4.4 构造方法158
4.4.1 构造方法定义158
自测题165
4.4.2 默认的变量初始化165
4.4.3 另一种初始化实例变量的方法165
4.4.4 StringTokenizer类(选读)169
自测题171
小结172
自测题参考答案172
编程项目175
第5章 类的定义(Ⅱ)179
引言180
前导知识180
5.1 静态方法和静态变量180
5.1.1 静态方法180
自测题185
5.1.2 静态变量185
自测题188
5.1.3 Math类188
自测题191
5.1.4 包装类191
5.1.5 自动的装箱和拆箱192
自测题193
5.1.6 包装类中的静态方法193
自测题196
5.2 引用和类参数196
5.2.1 变量与存储器196
5.2.2 引用198
5.2.3 类参数201
自测题205
5.2.4 null常量205
5.2.5 new运算符和匿名对象206
自测题208
5.3 引用的使用和滥用209
自测题215
5.3.1 拷贝构造方法216
自测题220
5.3.2 可变的类与不可变的类220
自测题222
5.4 包和iavadoc222
5.4.1 包和import语句223
5.4.2 java.lang包223
5.4.3 包名和目录224
5.4.4 默认包226
5.4.5 规定编译时使用的类路径(选读)227
5.4.6 名称冲突(选读)227
自测题227
5.4.7 javadoc简介(选读)228
5.4.8 针对javadoc的类注释(选读)228
5.4.9 运行javadoc(选读)229
自测题231
小结232
自测题参考答案232
编程项目235
第6章 数组239
引言240
前导知识240
6.1 数组概述240
6.1.1 数组的创建和访问240
6.1.2 length实例变量243
6.1.3 数组初始化244
自测题245
6.2 数组与引用247
6.2.1 数组是对象247
6.2.2 数组参数249
自测题252
6.2.3 main方法的自变量(选读)253
6.2.4 返回一个数组的方法254
自测题255
6.3 数组编程255
6.3.1 部分填充的数组255
自测题257
6.3.2 “for-each”循环262
6.3.3 参数个数不定的方法(选读)263
自测题265
6.3.4 数组实例变量的隐私泄露267
自测题268
自测题271
6.3.5 枚举类型(选读)271
自测题276
6.4 多维数组276
6.4.1 多维数组基本知识276
6.4.2 使用length实例变量278
自测题278
6.4.3 不规则数组278
6.4.4 多维数组类型的参数和返回值279
自测题283
小结284
自测题参考答案284
编程项目289
第7章 继承293
引言294
前导知识294
7.1 有关继承的基础知识294
7.1.1 派生类294
7.1.2 方法定义的覆盖301
7.1.3 改变被覆盖的方法的返回类型301
7.1.4 改变被覆盖的方法的访问权限302
自测题303
7.1.5 super构造方法303
7.1.6 this构造方法305
自测题307
7.2 封装和继承309
自测题311
7.3 继承编程315
7.3.1 访问重新定义的基类方法315
自测题317
7.3.2 Obiect类317
7.3.3 定义equals的正确方法318
自测题322
小结323
自测题参考答案323
编程项目326
第8章 多态性和抽象类329
引言330
前导知识330
8.1 多态性330
8.1.1 后绑定330
8.1.2 final修饰符332
自测题336
8.1.3 toString方法的后绑定337
8.1.4 向下类型转换和向上类型转换339
自测题341
8.1.5 初识clone方法342
8.2 抽象类346
自测题350
小结351
自测题参考答案351
编程项目352
第9章 异常处理355
引言356
前导知识356
9.1 异常处理基础知识356
9.1.1 try-throw-catch机制360
9.1.2 异常类363
9.1.3 标准包中的异常类363
自测题364
9.1 .4 定义异常类364
自测题370
9.1.5 多个catch块372
自测题374
9.2 在方法中抛出异常375
9.2.1 在一个方法中抛出一个异常375
9.2.2 在throws子句中声明异常376
9.2.3 捕获或声明规则的例外情况378
9.2.4 派生类中的throws子句380
9.2.5 何时使用异常380
9.2.6 事件驱动的编程381
自测题381
9.3 有关异常处理的其他编程技术382
9.3.1 finally块383
自测题383
9.3.2 重抛异常384
9.3.3 AssertionError类384
9.3.4 处理Scanner类的异常384
自测题386
9.3.5 ArrayIndexOutofBounds-Exception386
小结387
自测题参考答案387
编程项目390
第10章 文件I/O393
引言394
前导知识394
10.1 文件I/O概述394
10.1.1 流394
10.1.2 文本文件和二进制文件395
自测题395
10.2 文本文件395
10.2.1 写入文本文件396
10.2.2 把数据追加到文本文件400
自测题401
10.2.3 从文本文件中读取数据402
10.2.4 使用Scanner类读取文本文件402
10.2.5 用Scanner测试文本文件的结束404
自测题408
10.2.6 使用BufferedReader读取文本文件408
自测题410
10.2.7 用BufferedReader测试文本文件的结束411
自测题412
10.2.8 路径名412
10.2.9 嵌套的构造方法调用413
自测题414
10.2.10 System.in、System.out和System.err414
自测题415
10.3 File类415
自测题418
10.4 二进制文件418
10.4.1 将简单的数据写入二进制文件中419
10.4.2 UTF和writeUTF422
自测题423
10.4.3 从二进制文件读取简单数据423
自测题425
10.4.4 检查二进制文件的结束426
自测题427
10.4.5 对象的二进制输入/输出427
10.4.6 Serializable接口430
10.4.7 二进制文件中的数组对象430
自测题432
10.5 二进制文件的随机访问432
自测题436
小结437
自测题参考答案437
编程项目440
第11章 递归443
引言444
前导知识444
11.1 递归的void方法444
11.1.1 递归调用跟踪446
11.1.2 深入了解递归449
自测题450
11.1.3 递归栈(选读)451
11.1.4 递归与迭代452
自测题453
11.2 返回一个值的递归方法453
自测题456
11.3 递归思想456
11.3.1 递归的设计技术456
11.3.2 折半查找(选读)457
11.3.3 折半查找的效率(选读)462
自测题463
小结464
自测题答案464
编程项目467
第12章 UML和模式469
引言470
前导知识470
12.1 UML470
12.1.1 UML的发展史471
12.1.2 UML类图471
12.1.3 类的交互471
12.1.4 继承图472
12.1.5 再论UML473
自测题473
12.2 模式473
12.2.1 适配器模式(选读)474
12.2.2 模型-视图-控制器模式(选读)474
12.2.3 排序模式的局限性479
12.2.4 排序模式的效率(选读)479
12.2.5 模式的形式化方法480
自测题480
小结481
自测题参考答案481
编程项目482
第13章 接口和内部类485
引言486
前导知识486
13.1 接口486
13.1.1 接口486
13.1.2 实现接口的抽象类488
13.1.3 派生接口489
自测题489
13.1.4 Comparable接口490
自测题494
13.1.5 接口中已定义的常量494
自测题496
13.1.6 Serializable接口(选读)497
13.1.7 Cloneable接口497
自测题500
13.2 内部类的简单应用500
13.2.1 辅助类500
自测题504
13.2.2 内部类的.class文件504
13.3 内部类的深入介绍504
13.3.1 静态的内部类505
自测题505
13.3.2 公有的内部类505
自测题508
13.3.3 内部类的嵌套508
13.3.4 内部类和继承509
13.3.5 匿名类509
自测题511
小结512
自测题参考答案512
编程项目515
第14章 泛型和ArrayList类517
引言518
前导知识518
14.1 ArrayList类518
14.1.1 使用ArrayList类519
自测题523
14.1.2 ArrayList类中的方法523
14.1.3 for-each循环525
自测题527
自测题530
14.1.4 Vector类530
14.1.5 参数化的类和泛型531
14.2 泛型531
14.2.1 泛型基础知识531
14.2.2 类型参数的限制538
14.2.3 泛型方法(选读)540
14.2.4 泛型类的继承(选读)541
自测题543
小结544
自测题参考答案544
编程项目545
第15章 链式数据结构547
引言548
前导知识549
15.1 Java链表549
15.1.1 使用链表552
自测题555
15.1.2 内部节点类556
自测题558
15.1.3 链表的equals方法562
15.2 拷贝构造方法和clone方法(选读)563
15.2.1 简单的拷贝构造方法和clone方法(选读)563
15.2.2 异常(选读)565
自测题570
15.3 迭代器571
15.3.1 定义一个迭代器类571
15.3.2 添加和删除节点575
自测题578
15.4 链表的变体578
15.4.1 双向链表578
自测题585
15.4.2 栈数据结构585
自测题586
15.4.3 队列数据结构586
自测题588
15.4.4 运行时间和大O表示法588
自测题592
15.4.5 链表的效率592
15.5 链式散列表592
15.5.1 字符串的散列函数594
15.5.2 散列表的效率596
自测题596
15.6 集596
15.6.1 集的基本操作599
15.6.2 使用链表的集的效率600
自测题601
15.7 树601
15.7.1 树的属性601
15.7.2 二叉查找树的效率(选读)606
自测题607
小结608
自测题参考答案608
编程项目612
第16章 集合、映射和迭代器615
引言616
前导知识616
16.1 集合616
16.1.1 通配符617
16.1.2 集合框架618
自测题623
16.1.3 具体的集合类623
自测题629
16.1.4 ArrayList〈T〉和Vector〈T〉之间的区别629
16.1.5 集合框架的非参数化版本(选读)629
16.2 映射630
自测题635
16.3 迭代器635
16.3.1 迭代器概念635
16.3.2 Iterator〈T〉接口635
16.3.3 列表迭代器638
自测题641
小结642
自测题参考答案642
编程项目643
第17章 初探Swing647
引言648
前导知识648
17.1 事件驱动的编程648
17.2 按钮、事件和其他Swing基础知识650
自测题654
17.2.1 按钮654
17.2.2 操作监听器和操作事件655
自测题657
自测题659
17.2.3 标签659
17.2.4 颜色660
自测题662
17.3 容器和布局管理器663
17.3.1 布局管理器663
17.3.2 FlowLayout布局管理器666
17.3.3 网格布局管理器666
自测题668
17.3.4 面板669
17.3.5 Container类672
自测题674
17.3.6 模型-视图-控制器模式(选读)674
自测题675
17.4 菜单和按钮675
17.4.1 菜单条、菜单和菜单项676
17.4.2 嵌套菜单(选读)678
17.4.3 AbstractButton类679
17.4.4 setActionCommand方法681
17.4.5 监听器作为内部类(选读)682
自测题684
17.5 文本字段和文本区域684
17.5.1 文本区域和文本字段684
自测题689
17.5.2 一个Swing计算器690
自测题693
小结694
自测题参考答案694
编程项目699
第18章 深入Swing701
引言702
前导知识702
18.1 窗口监听器702
18.1.1 dispose方法706
18.1.2 WindowAdapter类706
自测题707
18.2 图标和滚动条707
18.2.1 窗标707
自测题712
18.2.2 滚动条712
自测题716
18.3 Graphics类718
18.3.1 图形对象的坐标系718
18.3.2 paint方法和Graphics类719
18.3.3 绘制椭圆形722
18.3.4 绘制弧线722
自测题725
18.3.5 圆角矩形(选读)725
18.3.6 面板的paintComponent726
18.3.7 动作绘画和repaint727
18.3.8 关于GUI更新的更多细节(选读)729
18.4 颜色729
18.4.1 规定一种绘图颜色730
18.4.2 定义颜色730
18.4.3 JColorChooser对话窗口732
自测题734
18.5 字体和drawString方法734
18.5.1 drawString方法734
18.5.2 字体736
自测题738
小结739
自测题参考答案739
编程项目742
第19章 Java的发展永无止境745
引言746
前导知识746
19.1 多线程746
19.1.1 Thread.sleep748
19.1.2 getGraphics方法749
19.1.3 使用线程修复非响应性程序750
19.1.4 Thread类750
19.1.5 Runnable接口(选读)752
自测题754
19.2 流套接字联网754
19.2.1 套接字755
19.2.2 套接字和线程757
自测题758
19.3 JavaBean758
19.3.1 组件模型758
19.3.2 JavaBean模型759
自测题759
19.4 Java和数据库连接759
19.4.1 SQL760
19.4.2 JDBC761
自测题761
小结762
自测题答案762
编程项目762
附录1 关键字766
附录2 运算优先级和结合规则767
附录3 Unicode字符集768
附录4 printf的格式规范769
附录5 类和接口小结770