书籍详情

Robust Java中文版:Java异常处理测试与调试

Robust Java中文版:Java异常处理测试与调试

作者:(美)史德汀|译者;韩宏志译

出版社:清华大学出版社

出版时间:2005-09-01

ISBN:9787302113416

定价:¥29.80

购买这本书可以去
内容简介
  本书讲解了Java异常的原理及处理方法,系统地阐述了体系结构、设计、开发、测试和调试等主题,并讨论了如何构建健壮的系统,是编程人员、测试人员、项目经理和架构师的必备读物。主要内容●提供Java异常处理的最佳实践●分析故障模式:如何查找最可能出现问题的位置●在复杂的APl和架构(J2EE、JDBC、RMI和JMS等)中使用异常●讲述应用程序的异常处理策略●在复杂的分布式多层系统中处理异常●介绍成熟的异常处理设计模式●使用开放源工具进行测试和调试●讲解提高健壮性的重要体系结构决策
作者简介
  StephenStelting,拥有十多年的软件开发、咨询和技术培训经验,目前在Sun公司的Broomfield培训中心任职,他为全球数以万计的开发人员提供了各类Java技术指导。Stephen参与了AppliedJavaPatterns(SunMicrosystemsPress/PrenticeHallPTR)一书的编写,并经常在、JavaOne、SunNetwork和ColoradoSoftwareSummit等会议上发表演讲。
目录
第Ⅰ部分      入 门 篇    
第1章  异常概述    1
1.1  简介    1
1.2  异常概念    3
1.3  异常类层次结构    4
1.4  异常的处理或声明选项    5
1.4.1  处理异常:try、catch和finally    5
1.4.2  try-catch-finally的规则    6
1.4.3  声明异常    7
1.4.4  声明异常的规则    7
1.5  可检测异常和非检测异常    7
1.6  异常的API    8
1.7  小结    10
第2章  异常处理技术和实践    11
2.1  简介    11
2.2  选择处理或声明    11
2.3  标准异常处理选项    12
2.3.1  记录异常和相关信息    12
2.3.2  要求用户或应用程序输入信息    14
2.3.3  使用默认或替换数据值    15
2.3.4  将控制传给应用程序的其他部分    16
2.3.5  将异常转化为其他形式    16
2.3.6  忽略问题    17
2.3.7  重试操作    17
2.3.8  采用替换或恢复操作    18
2.3.9  使系统作好停止准备    18
2.4  异常处理注意事项    18
2.5  处理异常时提倡的事项    18
2.5.1  尽可能地处理异常    19
2.5.2  具体问题具体解决    19
2.5.3  记录可能影响应用程序运行的异常    19
2.5.4  根据情况将异常转换为业务上下文    19
2.6  处理异常时忌讳的事项    19
2.6.1  一般不要忽略异常    19
2.6.2  不要使用覆盖式异常处理块    20
2.6.3  一般不要将特定异常转换为更通用的异常    20
2.6.4  不要处理能够避免的异常    21
第3章  高级异常处理概念    22
3.1  简介    22
3.2  自定义异常    22
3.2.1  定义异常类    23
3.2.2  声明方法抛出自定义异常    23
3.2.3  找到故障点,新建异常并加上关键字throw    24
3.3  链表异常    25
3.4  异常的本地化和国际化    26
3.4.1  创建ResourceBundle子类来存储消息    27
3.4.2  为不同地区继承ResourceBundle类    27
3.4.3  创建覆盖getLocalizedMessage的自定义异常类并用ResourceBundle检索消息    28
3.5  子类    30
3.6  接口和抽象类的异常声明    30
3.7  异常栈跟踪    31
3.8  低级异常处理    34
第4章  异常和线程    39
4.1  简介    39
4.2  多线程系统中的异常    40
4.3  同步代码块中的异常    40
4.4  线程活动的异常风险    42
4.5  基于线程的通信的异常    43
4.6  死锁    46
4.7  取消线程    47
第5章  记录和断言    48
5.1  记录API    48
5.1.1  何时使用记录API    48
5.1.2  记录API简介    48
5.1.3  记录API详述    49
5.1.4  标准记录配置    53
5.2  断言    56
5.2.1  使用断言    57
5.2.2  在应用程序中使用断言    57
第Ⅱ部分  异常处理和设计
第6章  异常处理和设计    59
6.1  简介    59
6.2  面向对象设计的原理    59
6.2.1  将异常集成到OOD设计以便维护    62
6.2.2 “可维护性设计”的优缺点    69
6.2.3  故障模式分析    69
6.3  小结    70
第7章  Java核心语言中的异常    71
7.1  简介    71
7.2  基本数据类型    71
7.2.1  概述    71
7.2.2  用法    72
7.2.3  常见问题    72
7.2.4  一般建议    74
7.3  Object类和Java中的对象    74
7.3.1  概述    74
7.3.2  潜在问题概述    74
7.4  数组    79
7.4.1  索引    79
7.4.2  数组存储管理    79
7.4.3  对象输入    80
7.5  java.lang包中的接口    80
7.6  String类和StringBuffer类    81
7.6.1  String类    82
7.6.2  StringBuffer类    82
7.7  BigDecimal类和BigInteger类    82
7.8  包装类    83
第8章  集合和I/O    84
8.1  简介    84
8.2  集合架构    84
8.2.1  概述    84
8.2.2  集合架构的注意事项和相关问题    85
8.2.3  集合架构中的异常和错误    89
8.3  I/O API    91
8.4  I/O子类的异常和错误    94
8.4.1  一般问题    94
8.4.2  特定流类型的问题    95
8.5  新I/O API—— NIO    100
8.6  NIO API中的异常    101
8.6.1  缓冲区    102
8.6.2  选择器    106
第9章  分布式Java API    108
9.1  简介    108
9.2  分布式通信的基本原理    108
9.2.1  Java的分布式通信模型    109
9.2.2  分布式Java API的问题    110
9.2.3  Java异常模型    110
9.2.4  分布式通信模型和标准问题    111
9.3  远程方法调用(RMI)    112
9.3.1  基本RMI通信模型    112
9.3.2  RMI的常见问题    113
9.3.3  RMI的异常模型    116
9.4  Java命名和目录接口    121
9.4.1  JNDI的常见问题    122
9.4.2  常见JNDI操作的异常模型    123
9.5  Java数据库连接    125
9.5.1  JDBC中的异常    125
9.5.2  数据库通信技术的通用问题    126
9.5.3  标准JDBC生命期    128
9.6  小结    132
第10章  J2EE    133
10.1  简介    133
10.2  基本J2EE应用程序模型    133
10.2.1  J2EE应用程序模型    135
10.2.2  J2EE中的异常    136
10.3  客户层    136
10.4  Web层    137
10.4.1  声明性错误处理    138
10.4.2  Web层中的组件    139
10.4.3  Servlet和Filter的异常模型:编程错误处理    140
10.4.4  Servlet和Filter异常模型    140
10.4.5  Servlet组件的常见问题和风险    142
10.4.6  JSP的异常模型    144
10.4.7  JSP的直接错误转发    144
10.4.8  JSP异常模型    145
10.4.9  JSP的转换和运行时错误    146
10.4.10  自定义标记库    146
10.5  EJB层    147
10.5.1  标准EJB方法    147
10.5.2  EJB的常见问题    149
10.5.3  bean特有的问题    150
10.5.4  EJB异常模型    152
10.5.5  客户端调用方法的生命期管理    153
10.5.6  容器回调方法    155
10.5.7  从容器看异常    156
10.6  J2EE和EJB的事务    157
10.7  J2EE和异常处理的全局考虑事项    160
10.8  J2EE异常处理要考虑的因素    161
10.8.1  日志记录    161
10.8.2  异常开销    161
10.8.3  网络层的延迟    163
10.8.4  J2EE系统其他的最佳实践    163
第Ⅲ部分  有效使用异常、错误和处理    
第11章  体系结构、设计和异常模型    165
11.1  简介    165
11.2  架构师必须考虑异常和错误    166
11.2.1  故障的代价    166
11.2.2  成功的收获    166
11.3  体系结构、设计和开发    167
11.3.1  架构师和设计师的分工    167
11.3.2  开发人员的角色    168
11.4  异常模型的关键体系结构决策    168
11.5  异常模型的体系结构决策    169
11.5.1  处理和传播策略    170
11.5.2  异常和错误类模型    171
11.5.3  常用服务    173
11.6  编写健壮的Java代码    174
第12章  模式    176
12.1  简介    176
12.2  体系结构模式    177
12.2.1  层    177
12.2.2  模型-视图-控制器    178
12.3  设计模式    179
12.4  创建模式    179
12.4.1  创建器    179
12.4.2  Singleton模式    181
12.5  结构模式    182
12.5.1  适配器    182
12.5.2  复合模式    183
12.5.3  facade模式    184
12.5.4  代理模式    185
12.6  行为模式    187
12.6.1  职责链    187
12.6.2  命令模式    188
12.6.3  观察者模式    188
12.6.4  状态模式    189
12.6.5  策略模式    190
12.7  J2EE模式    191
12.8  集成层    192
12.9  表示层    194
12.9.1  Front Controller    194
12.9.2  Intercepting Filter    195
12.10  业务层    196
12.10.1  Service Locator    196
12.10.2  Session Facade    197
12.11  小结    198
第13章  测试    199
13.1  测试的目的和意义    199
13.2  对测试的一些误解    199
13.2.1  误解一:开发人员不应该测试代码    200
13.2.2  误解二:开发人员应完成代码的所有测试    200
13.2.3  误解三:仅用一种方式测试应用程序    200
13.2.4  误解四:完全测试应用程序    201
13.3  盒外和盒内测试类型    201
13.3.1  测试类型    201
13.3.2  测试的角色和职责    203
13.4  Java的测试难点    204
13.5  测试实践    204
13.5.1  测试制度化    204
13.5.2  测试的组织方法    207
13.6  如何管理和运行测试    210
13.7  测试何时结束    212
13.7.1  一般测试标准    212
13.7.2  开发人员测试标准    213
第14章  调试    214
14.1  简介    214
14.2  调试的含义    214
14.3  调试原理和实践    215
14.4  调试策略    216
14.5  调试所见和方法    219
14.5.1  低级测试技术    220
14.5.2  中级测试技术    222
14.5.3  高级测试技术    223
14.6  调试面临的特殊挑战    224
14.6.1  在Java应用程序中调试非Java技术    224
14.6.2  架构抛出的异常    225
附录A  分析处理-声明的测试结果    226
附录B  JUnit简明指南    230
B.1  基本信息    230
B.2  安装JUnit    230
B.3  运行JUnit    230
B.4  JUnit测试架构的体系结构    231
B.5  编写JUnit测试    232
B.6  测试设计的指导原则    238
附录C  MyBuggyServlet——组件验证问题
猜您喜欢

读书导航