标题：实用Java教程
版权信息
书 名: 实用Java教程 
作　者：(英国)(DavidJ.Barnes)巴恩斯 (英国)(MichaelLolling)科灵
出版社： 人民邮电出版社
出版时间： 2009
ISBN: 9787115190420
开本： 16
定价: 49.00 元
内容简介
《实用Java教程:基于BlueJ的对象优先方法》内容由浅入深，适合初学者快速入门，也适合高级程序员和专业人士学习参考，可作为计算机相关专业“面向对象程序设计”课程的教材。
作者简介
DavidJ.Barriles，任教于英国肯特大学，有超过25年的程序设计教学经验，主要研究兴趣是程序设计、软件测试、计算机科学教学。
MichaelKolling，BIueJ的主要开发者，也是Greenfoot开发团队的主要成员，BlueJ和Greenfoot这两个教学用的软件开发环境均产生了世界性的影响。目前他任教于英国肯特大学，主要研究兴趣是面向对象系统、编程语言、计算机科学教学、开发环境和工具等。
编辑推荐
《实用Java教程:基于BlueJ的对象优先方法》是一部极富创新性的面向对象技术和Java教材。《实用Java教程:基于BlueJ的对象优先方法》中紧紧围绕Java语言教学中的重点和难点——“面向对象思想”进行组织，通过大量贴近实际的例子和编程练习，完整讲述了开发Java程序的全过程。深入阐述各种面向对象概念。在此过程中穿插讨论了大量现代软件工程实践（包括迭代开发、测试、调试、重构、设计模式等）。讲述重要的Java语法。并涵盖了泛型、autobox等Java的新特性。
《实用Java教程:基于BlueJ的对象优先方法》的另一大特点是紧密结合专门为教学开发的图形化开发环境BlueJ，使学生能够从一开始就在实际环境中直观地进行学习，得到实战熏陶。
《实用Java教程:基于BlueJ的对象优先方法》英文原版已被翻译为德.法、荷、意、葡等多种文字。成为世界众多高校的教材。与《实用Java教程:基于BlueJ的对象优先方法》配套的教学环境BlueJ是一种开源软件，可自由下载。自1999年首次发行以来。已被美国普度大学、华盛顿大学、加州大学洛杉矶分校、英国剑桥大学，新加坡南洋理工大学、澳大利亚莫纳什大学、我国香港大学等700多所大学用于程序设计课程的教学。
目录
第一部分面向对象基础
第1章对象和类
1.1对象和类
1.2创建对象
1.3调用方法
1.4参数
1.5数据类型
1.6多个实例
1.7状态
1.8对象中的字段和方法
1.9对象交互
1.10源代码
1.11另一个例子
1.12返回值
1.13对象作为参数进行传递
小结
关键术语
第2章理解类的定义
2.1售票机
2.2检查类的定义
2.3字段、构造器和方法
2.3.1字段
2.3.2构造器
2.4通过参数传递数据
2.5赋值
2.6访问器方法
2.7修改器方法
2.8在方法中打印
2.9简易型售票机的总结
2.10对售票机设计的探讨
2.11做选择：条件语句
2.12高级条件语句的例子
2.13局部变量
2.14字段、参数和局部变量
2.15改进型售票机的总结
2.16自我复习练习题
2.17回顾一个熟悉的例子
小结
关键术语
第3章对象交互
3.1时钟的例子
3.2抽象与模块化
3.3软件中的抽象
3.4在时钟例子里的模块化
3.5实现时钟显示器
3.6类图与对象图
3.7基本类型和对象类型
3.8ClockDisplay的源代码
3.8.1NumberDisplay类
3.8.2字符串拼接
3.8.3取模运算符
3.8.4ClockDisplay类
3.9对象创建对象
3.10多个构造器
3.11方法调用
3.11.1内部方法调用
3.11.2外部方法调用
3.11.3时钟显示器的总结
3.12另一个对象交互的例子
3.12.1邮件系统的例子
3.12.2this关键字
3.13使用调试器
3.13.1设置断点
3.13.2单步执行
3.13.3单步进入方法
3.14方法调用回顾
小结
关键术语
第4章对象集合
4.1在可变容量的容器中存放对象
4.2个人记事本
4.3初涉类库
4.4容器的对象结构
4.5泛型类
4.6容器内的编号
4.7从容器中删除对象
4.8处理整个容器
4.8.1for-each循环
4.8.2while循环
4.8.3遍历容器
4.8.4索引存取与迭代器的比较
4.9记事本例子的总结
4.10另一个例子：拍卖系统
4.10.1Lot类
4.10.2Auction类
4.10.3匿名对象
4.10.4使用容器
4.11可变容量容器的总结
4.12固定容量的容器
4.12.1日志文件分析器
4.12.2声明数组变量
4.12.3创建数组对象
4.12.4使用数组对象
4.12.5分析日志文件
4.12.6for循环
小结
关键术语
第5章高级行为
5.1类库的文档
5.2TechSupport系统
5.2.1研究TechSupport系统
5.2.2阅读代码
5.3阅读类文档
5.3.1接口与实现
5.3.2使用类库中的类的方法
5.3.3检查字符串是否相等
5.4增加随机行为
5.4.1Random类
5.4.2在有限范围内产生随机数
5.4.3产生随机的回答
5.4.4阅读参数化的类的文档
5.5包和导入
5.6使用映射表示关联
5.6.1映射的概念
5.6.2使用HashMap
5.6.3在TechSupport系统中使用映射
5.7使用集合
5.8分割字符串
5.9完成TechSupport系统
5.10编写类文档
5.10.1在BlueJ中使用javadoc
5.10.2类文档的组成
5.11公共与私有
5.11.1信息隐藏
5.11.2私有方法和公共字段
5.12通过接口研究类
5.13类变量和常量
5.13.1static关键字
5.13.2常量
小结
关键术语
第6章使对象正常运行
6.1引言
6.2测试和调试
6.3用BlueJ进行单元测试
6.3.1使用检查器
6.3.2正向测试和反向测试
6.4测试自动化
6.4.1回归测试
6.4.2自动检查测试结果
6.4.3记录测试
6.4.4夹具
6.5模块化和接口
6.6调试场景
6.7注释与风格
6.8人工走查
6.8.1高层次的走查
6.8.2用走查来检查状态
6.8.3口头走查
6.9打印语句
6.10选择测试策略
6.11调试
6.12在实战中使用这些技术
小结
关键术语
第7章类的设计
7.1引言
7.2world-of-zuul游戏的例子
7.3耦合和内聚的介绍
7.4代码重复
7.5扩展
7.5.1任务
7.5.2找到相关的源代码
7.6耦合
7.7责任驱动的设计
7.8改动局部化
7.9隐性耦合
7.10预见性
7.11内聚
7.11.1方法的内聚
7.11.2类的内聚
7.11.3内聚对于可读性的好处
7.11.4内聚对于重用的好处
7.12重构
7.12.1重构与测试
7.12.2重构的例子
7.13语言无关的重构
7.13.1枚举类型
7.13.2命令界面的进一步解耦
7.14设计原则
7.15脱离BlueJ执行程序
7.15.1类方法
7.15.2main方法
7.15.3类方法的限制
小结
关键术语
第二部分应用程序结构
第8章通过继承改进结构
8.1DoME例子
8.1.1DoME的类与对象
8.1.2DoME源代码
8.1.3DoME程序的讨论
8.2使用继承
8.3继承层次
8.4Java的继承
8.4.1继承与访问权限
8.4.2继承与初始化
8.5DoME：增加另一种媒体类型
8.6（迄今为止）继承的优点
8.7子类型
8.7.1子类与子类型
8.7.2子类型与赋值
8.7.3子类型与参数传递
8.7.4多态变量
8.7.5换型
8.8Object类
8.9自动包装与包裹类
8.10容器层次
小结
关键术语
第9章继承深入
第10章高级抽象技术
第11章构造图形用户界面程序
第12章错误处理
第13章应用程序设计
第14章案例研究
附录A使用BlueJ
附录BJava数据类型
附录CJava控制结构
附录D运算符
附录E脱离BlueJ运行Java程序
附录F配置BlueJ
附录G使用调试器
附录HJUnit单元测试工具
附录Ijavadoc
附录J程序风格指南
附录K重要的类库类
索引
……