注册 | 登录读书好,好读书,读好书!
读书网-DuShu.com
当前位置: 首页出版图书科学技术计算机/网络软件与程序设计JAVA及其相关Java面向对象程序设计

Java面向对象程序设计

Java面向对象程序设计

定 价:¥69.00

作 者: (美)阿诺、(美)德克斯特、(美)韦斯
出版社: 清华大学出版社
丛编项: 世界著名计算机教材精选
标 签: Java

ISBN: 9787302135104 出版时间: 2006-09-01 包装: 平装
开本: 16开 页数: 569 字数:  

内容简介

  本书是应用Java介绍计算机编程技巧的入门图书。之所以选用这个流行语言,是出于几个理由:●Java是一个面向对象的语言。面向对象已经成为软件开发领域的一种基本方法。在本教材中,我们将解释什么东西构成了语言的面向对象。●Java是一个相对简单的面向对象语言,至少与其他一些面向对象语言(比如C++)相比是这样。尽管C++更多复杂性的介绍超越了本书的范围,但还是要指出,它存在一些让刚刚开始学习的学生误入歧途的缺陷。其中的很多陷阱都不会在Java中出现。●Java从其他流行语言中借用了许多特性,特别是从C和C++中。这些熟悉的特性也使得Java对那些语言的用户产生了吸引力。●Java甚至让初级程序员也能够编写出包含相当复杂用户界面——按钮、列表框、滚动条等——的程序。●Java能够运行在多种类型的机器上——PC机、苹果机、Sun工作站等。●Java提供了一些相当复杂的工具,包括相对容易地访问网络和互联网,这使得它对许多编程领域都有吸引力。●使用Java编程有乐趣。正像前面已经提到的那样,即使是一个经验较少的新手也能够利用Java提供的工具编写出外观漂亮、行为复杂的程序。

作者简介

暂缺《Java面向对象程序设计》作者简介

图书目录

第1章进入Java1
1.1计算机与程序1
1.2程序与模型1
1.3对象、类和消息3
1.3.1对象3
1.3.2行为3
1.3.3信息3
1.3.4Java程序4
1.3.5类4
1.3.6预定义的对象和类4
1.4第一个对象PrintStream对象5
1.5发送一个消息到System.out
对象5
1.6一个Java程序7
1.7Java小插曲标识符、语句顺序、格
式和注释8
1.7.1Java规则8
1.7.2标识符8
1.7.3关键字8
1.7.4Java的语句顺序9
1.7.5程序格式和注释9
1.7.6注释9
1.7.7包围的注释9
1.7.8行注释10
1.8例行步骤10
1.8.1可访问性10
1.8.2准备执行:翻译11
1.8.3执行11
1.9时刻12
1.10本章小结13
1.11关键术语14
1.12复习题15
1.13练习题15
1.14GUI补充网页、HTML和小
应用程序概述16
第2章发送消息和执行操作22
2.1简介22
2.2使用PrintStream对象22
2.3Java小插曲引用、方法和消息23
2.3.1方法的重载24
2.3.2消息发出后24
2.3.3再论标识符24
2.4String 类24
2.5方法、参数以及返回值27
2.6引用变量27
2.7Java小插曲变量和赋值29
2.7.1变量29
2.7.2赋值30
2.7.3赋值语句不是等式30
2.7.4初始化31
2.7.5引用变量和对象31
2.7.6微妙而重要的一点:变量
的两种角色32
2.7.7变量是独立的32
2.7.8常量不是变量33
2.7.9语句33
2.7.10变化33
2.8命令式程序设计完成任务34
2.8.1整数类型和算术运算35
2.8.2基本的算术运算符36
2.8.3优先级37
2.8.4复合赋值运算符38
2.8.5自增/自减39
2.8.6操作的顺序40
2.9使用String方法41
2.9.1空串44
2.9.2灵活且实用的对象47
2.10命令式程序设计简单的条件47
2.10.1if语句48
2.10.2条件49
2.11本章小结51
2.12关键术语52
2.13复习题53
2.14练习题53
2.15GUI 补充内容图形的绘制和
定位56
第3章应用对象和基本类型64
3.1简介64
3.2创建对象64
3.2.1使用构造方法创建对象64
3.2.2引用变量的重要作用65
3.3Java小插曲对象的来源65
3.3.1重载的和默认的构造
方法65
3.3.2对象来自于何处65
3.3.3不可变对象66
3.3.4级联66
3.3.5组合67
3.4命令式程序设计布尔类型68
3.4.1boolean值和变量68
3.4.2boolean表达式69
3.5对象的应用69
3.6日期和日历70
3.7命令式程序设计其他的整数
类型72
3.7.1为什么我们还要用int72
3.7.2混合类型算术运算72
3.7.3其他的整数类型:short
和byte73
3.8BigInteger73
3.9Java小插曲包和import语句75
3.10输入简介75
3.10.1文件输入概要:从磁盘到
程序76
3.10.2从字节到字符:Unicode
的例子77
3.10.3从char到String:获得文本
的行77
3.11文件输入过程77
3.11.1类File:获取硬盘文件
信息77
3.11.2类FileInputStream:从磁
盘文件中读取字节79
3.11.3类InputStreamReader:将
byte转化成char79
3.11.4类BufferedReader:从
char流到字符串80
3.11.5结果:为输入打开一个
文件80
3.12键盘输入82
3.13文件输出84
3.14网络计算简介85
3.14.1网络的概念85
3.14.2网络输入86
3.15Java小插曲Java文档88
3.15.1Java应用程序接口88
3.15.2API 文档的内容88
3.15.3文档页的层次88
3.15.4寻找类String88
3.16本章小结90
3.17关键术语91
3.18复习题91
3.19练习题92
3.20GUI补充材料初识动画94
第4章定义类98
4.1简介98
4.2类的定义方法98
4.2.1使用Logger类101
4.2.2基本的类的定义102
4.3类的定义实例变量102
4.3.1使用Stopwatch类105
4.3.2使用实例变量106
4.4关于方法的更多内容返回值106
4.4.1使用Counter类108
4.4.2返回值与输出:再谈
Stopwatch109
4.4.3使用返回值110
4.5命令式编程寻找最小值110
4.6Java小插曲变量、声明以及return
语句112
4.6.1声明顺序112
4.6.2return语句112
4.6.3变量及其生存期113
4.7关于方法的更多内容形式
参数114
4.7.1使用类Minimizer116
4.7.2使用参数117
4.8状态和行为117
4.9类的定义综合起来118
4.9.1标识方法118
4.9.2确定状态119
4.9.3实现test()120
4.9.4实现其他方法121
4.9.5使用类TypingTutor123
4.9.6方法模式:get和set125
4.10Java小插曲声明、访问和
对象125
4.10.1形参125
4.10.2访问控制:public 与
private125
4.10.3对象访问自己的方法126
4.10.4对象及其生存期126
4.11本章小结127
4.12关键术语127
4.13复习题128
4.14练习题128
4.15GUI补充材料一个简单的
动画130
第5章高级类定义137
5.1定制新对象构造方法137
5.1.1TypingTutor类137
5.1.2定义重载构造方法139
5.2Java小插曲构造方法、初始化
以及重载143
5.2.1默认构造方法143
5.2.2构造方法和初始化143
5.2.3重载144
5.3示例:Name类144
5.3.1确定行为144
5.3.2接口145
5.3.3Name类的实现146
5.3.4完整的Name类149
5.3.5使用Name类150
5.3.6输出对象:修改
Name类150
5.4提供类的行为152
5.5Java小插曲静态方法155
5.5.1回顾我们的第一个程序155
5.5.2预定义的静态方法156
5.5.3读取基本类型值157
5.6跟踪类范围内的信息静态
变量158
5.7定义常量:final160
5.8Java小插曲使用对象161
5.8.1“句点”符号161
5.8.2再谈访问控制162
5.8.3关键字this162
5.8.4将对象表示为一个字
符串163
5.8.5比较两个对象164
5.9重温输入方法测试输入的
结束167
5.9.1Null值167
5.9.2在read()方法中使
用null167
5.10本章小结168
5.11关键术语168
5.12复习题168
5.13练习题169
5.14GUI补充材料创建控制和
交互169
第6章方法内核:命令式程序设计176
6.1概述176
6.2一个进行米制转换的类176
6.2.1模拟度量的数值176
6.2.2基本数据类型float和
double177
6.2.3实现convertFeetToMeters()
方法178
6.2.4方法printFeetToMeters
Table():迭代179
6.2.5使用for来实现一个计数
循环180
6.3Java小插曲float、double以及for
语句181
6.3.1float和double的显示181
6.3.2float和double封装类181
6.3.3float和double的字
面值182
6.3.4使用float和double182
6.3.5什么时候使用float和
double182
6.3.6混合类型算术183
6.3.7for语句的执行183
6.4π值的逼近183
6.4.1模拟镖靶185
6.4.2编写方法main()185
6.4.3实现Toss类190
6.4.4使用MonteCarloPi类193
6.5嵌套和复合的条件语句193
6.5.1Car类193
6.5.2实现chooseWarranty():多
分支检测194
6.5.3复合条件195
6.6Java小插曲逻辑运算符和条件
语句196
6.6.1逻辑运算符196
6.6.2嵌套的if和悬空
的else196
6.6.3条件语句格式之间的
关系197
6.6.4Switch语句198
6.7本章小结199
6.8关键术语200
6.9复习题200
6.10练习题200
6.11GUI补充材料关于交互的更多
内容202
第7章类设计207
7.1概述207
7.2类设计概述207
7.3重温Counter类207
7.4自动取款机209
7.4.1问题的描述209
7.4.2一个示例209
7.4.3寻找首要对象210
7.4.4确定ATM类所需要的
行为210
7.4.5定义ATM类的接口210
7.4.6定义ATM类的实例
变量211
7.4.7实现ATM类的方法211
7.4.8确定Account类的行为和
定义接口212
7.4.9定义Account类实例
变量212
7.4.10实现Account类的
方法213
7.4.11确定并实现Account类
的“辅助”方法213
7.4.12完整地实现
Account类215
7.4.13使用这些类216
7.4.14讨论217
7.5调度修理工人的例子218
7.5.1问题的描述218
7.5.2情景举例218
7.5.3寻找首要对象218
7.5.4确定所求的行为动作--
类RepairPerson218
7.5.5定义类RepairPerson的
接口219
7.5.6定义类RepairPerson的实例
变量220
7.5.7实现类RepairPerson的
方法220
7.5.8确定类Location所需的行为
动作222
7.5.9定义类Location的
接口222
7.5.10定义类Location的实例
变量223
7.5.11实现类Location的
方法223
7.5.12使用这些类225
7.6本章小结226
7.7关键术语227
7.8复习题227
7.9练习题227
7.10GUI补充材料多个控件:布局
以及事件处理228
第8章验证对象的行为245
8.1概述245
8.2错误的分类246
8.2.1编译时的语法和语义
错误246
8.2.2运行时错误248
8.2.3逻辑错误248
8.3Java小插曲Java的断言机制249
8.4测试驱动249
8.5自动测试251
8.6测试什么以及如何测试254
8.6.1一个好的、完整的测试应该
由什么组成254
8.6.2所有的行为都必须被
测试254
8.6.3试着寻找逻辑测试顺序255
8.6.4确保每条语句至少被执行
了一次255
8.6.5不同的测试中应该使用
什么样的值257
8.6.6寻找并测试特例257
8.6.7不要关心测试的效率257
8.7调试的方法258
8.7.1发现bug258
8.7.2搜寻错误259
8.8本章小结259
8.9关键术语260
8.10复习题260
8.11练习题261
8.12GUI补充材料分离显示和
控制261
第9章多个对象的处理272
9.1简介272
9.2处理多个对象272
9.3循环模式275
9.4循环在测试中的作用276
9.5电话簿277
9.5.1问题的描述277
9.5.2情景示例277
9.5.3确定主要对象278
9.5.4确定所需要的行为278
9.5.5定义接口278
9.5.6定义实例变量278
9.5.7方法的实现278
9.5.8确定Entry类希望的
行为280
9.5.9定义Entry类的接口280
9.5.10定义Entry类的实例
变量281
9.5.11实现Entry类的方法281
9.5.12使用Entry类的方法281
9.5.13讨论281
9.5.14类开发过程的本质282
9.6保存多个值282
9.6.1再谈TelephoneBook282
9.6.2相关对象的集合283
9.7Vector——一个简单的集合类283
9.8使用for循环来遍历Vector284
9.9再谈TelephoneBook类287
9.9.1一个更好的实现方法287
9.9.2定义实例变量287
9.9.3实现方法287
9.9.4讨论288
9.10Java小插曲基本类型与集
合:再谈封装类288
9.11一个例子——确定学生的相对
表现289
9.11.1问题的描述289
9.11.2确定主要对象290
9.11.3行为的确定290
9.11.4定义接口290
9.11.5定义实例变量291
9.11.6方法的实现291
9.11.7类的使用292
9.11.8讨论293
9.12另一个Vector的应用293
9.12.1doExperiment()方法295
9.12.2doOutput()方法295
9.13Java小插曲Object的方法298
9.14数组介绍300
9.14.1声明并创建数组301
9.14.2数组元素302
9.15Vector和数组302
·ⅩⅧ·9.15.1使用数组还是
Vector302
9.15.2从Vector到数组303
9.16使用数组来处理抛掷硬币304
9.17本章小结305
9.18关键术语305
9.19复习题306
9.20练习题306
9.21GUI补充材料文本的放置307
第10章设计迭代321
10.1概述321
10.2设计循环321
10.2.1非正式过程322
10.2.2选择和定义变量322
10.2.3代码框架322
10.2.4while条件323
10.2.5初始化324
10.2.6确保循环终止324
10.2.7完成循环体324
10.2.8重新检查初始化325
10.2.9讨论325
10.3Java小插曲两个循环语句326
10.3.1for等价于while326
10.3.2for语句的灵活性326
10.4另一个简单例子327
10.4.1乘法327
10.4.2非正式过程328
10.4.3选择和定义变量328
10.4.4代码框架328
10.4.5while条件328
10.4.6初始化329
10.4.7确保终止329
10.4.8完成循环体330
10.4.9重新检查初始化330
10.4.10讨论330
10.5重新考察循环模式330
10.5.1遍历模式:查寻记
录项331
10.5.2读/处理模式:修理工
距离333
10.6修理工循环的变种336
10.6.1统计30个街区内的修
理工人数336
10.6.2寻找最近的修理工337
10.7合计银行账号338
10.8更多循环模式:计数器、累计器与
极值340
10.8.1循环模式:计数器340
10.8.2循环模式:累计器340
10.8.3循环模式:对象极值341
10.8.4循环模式:基本类型数
据中的极值342
10.9遍历数组的迭代343
10.10Java 小插曲短路、break和
continue345
10.10.1短路345
10.10.2break和continue
语句346
10.11循环设计策略精化不完美的
解决方案348
10.12示例LOGO海龟352
10.13本章小结364
10.14关键术语364
10.15复习题364
10.16练习题365
10.17GUI补充材料更多文本
操作367
第11章维护对象集合381
11.1概述381
11.2搜索381
11.3二分搜索385
11.4寻找极值的下标392
11.5排序394
11.6搜索文件399
11.7线程并行计算403
11.7.1引入Thread类404
11.7.2一个简单的线程示例405
11.8线程并行文件搜索407
11.9本章小结408
11.10关键术语409
11.11复习题409
11.12练习题409
11.13GUI补充材料线程410
第12章扩展类的行为420
12.1概述420·XVⅣ·
12.2扩展类——继承 Ⅰ421
12.3一个更好的BufferedReader422
12.3.1问题陈述422
12.3.2情景422
12.3.3寻找主体422
12.3.4 确定行为422
12.3.5定义接口422
12.3.6定义实例变量423
12.3.7实现方法423
12.3.8类的完整实现424
12.4为子类添加状态——访问父类
状态426
12.5回顾Name类——添加额外
状态426
12.6Java小插曲继承430
12.6.1基本机制与术语430
12.6.2构造器431
12.6.3继承和isa关系432
12.6.4protected关键字433
12.6.5继承与合成433
12.6.6继承还是合成434
12.6.7常见错误434
12.6.8类的层次结构435
12.6.9Object类435
12.7覆盖方法436
12.8Java小插曲多态436
12.8.1覆盖机制436
12.8.2多态437
12.8.3覆盖与重载438
12.9抽取共同行为——继承Ⅱ439
12.10抽象方法和抽象类442
12.11规定公共行为——接口444
12.12一种通用排序算法446
12.13本章小结449
12.14关键术语450
12.15复习题451
12.16练习题451
12.17GUI补充材料探究Java类
层次结构中的抽象窗口工具箱
(Abstract Window Toolkit)452
第13章异常460
13.1预计异常460
13.2遇到异常460
13.2.1抛出异常461
13.2.2throws子句463
13.3Java小插曲Exception类463
13.3.1标注异常463
13.3.2Checked Exception 与
RuntimeException463
13.4处理异常464
13.5对异常的责任468
13.6异常并非总是错误469
13.7本章小结470
13.8关键术语471
13.9复习题471
13.10练习题471
13.11GUI补充材料模型视图控
制器(MVC)范式472
第14章递归482
14.1概述482
14.2示例求幂483
14.2.1递归调用484
14.2.2结束485
14.3如何设计递归方法485
14.3.1读取数据来构造一个Repair
Person对象的集合485
14.3.2在集合中寻找最近的修
理工486
14.3.3两种递归模式487
14.4递归方法——幕后探秘488
14.5在向量、数组和字符串中
使用递归492
14.6排列495
14.7Hanoi塔498
14.7.1智力游戏498
14.7.2找出简单的方法499
14.7.3问题阐述502
14.7.4场景502
14.7.5实现方法504
14.8递归和迭代510
14.9本章小结512
14.10关键术语512
14.11复习题513
14.12练习题513
14.13GUI补充材料Hanoi塔
小应用程序515
第15章客户服务器计算533
15.1客户端和服务器533
15.2Internet通信533
15.2.1套接字534
15.2.2TCPConnection类535
15.3客户服务器计算537
15.4一些简单的客户端类539
15.4.1WebClient类539
15.4.2MailClient类541
15.4.3处理客户端异常544
15.5本章小结547
15.6关键术语547
15.7复习题547
15.8练习题548
15.9GUI补充材料Swing548
附录A三个Java环境558
A.1引言558
A.2Macintosh环境558
A.3UNIX/Linux环境558
A.4Windows环境559
附录BAWIO561
B.1引言561
B.2使用AWIO进行输出561
B.2.1AWPrinter类561
B.2.2什么东西会出错呢562
B.3使用AWIO进行键盘输入563
B.4交互式输入/输出565
B.5使用AWIO进行磁盘文件输入565
B.6在本书的其余部分使用AWIO566
附录C使用Enumeration遍历集合568
C.1遍历矢量——Enumeration568
C.2另一个循环模式——列举集合
元素569

本目录推荐