扫描二维码,下载手机APP
下载安卓APP箭头
客服QQ
箭头给我发消息

客服QQ:2698585038

Java程序设计教程(第八版)

综合评级:
★★★★★

定价:
¥69.00

作者:
John Lewis(J. 刘易斯) William Loftus(W. 洛夫特斯) 著

出版社:
电子工业出版社

出版日期:
2015年7月

页数:
496

字数:
875000

ISBN:
9787121264191

书籍介绍

本书对面向对象的思想和机制进行了准确而透彻的剖析,为读者深入学习Java语言程序设计提供了全面、详细的指导,并在前几版的基础上进行了全面的修订与更新。全书覆盖了面向对象设计的广泛内容,介绍了Java语言的基本数据类型、流程控制、类和对象等。在深入分析面向对象设计方法的基础上,介绍了封装机制、继承机制和多态性的实现与应用、异常的捕捉和处理、集合类的定义方法和泛型类的概念,书中提供了大量具有可实践性的程序实例、自测题及答案、练习题和编程项目、生动的“软件失误案例”和“视频讲解”学习辅导短片,并且在每章中都补充了针对本章主题的图形用户界面(GUI)设计知识和实例,这部分内容可形成完整的Java GUI设计知识体系。此外,本书还有内容丰富的附录,并提供了在线程序设计实践网站服务。

作者简介

John Lewis 教授是美国知名的编程语言畅销教材的作者,撰写了多部有关Java编程导论、Java软件解决方案、Java数据结构以及计算机应用的相关教材。Lewis教授从美国弗吉尼亚大学获得了博士学位并一直在该校任教

目录

第1章计算机系统概述

1.1计算机处理过程

1.1.1软件分类

1.1.2数字计算机

1.1.3二进制数

自测题(答案见附录M)

1.2硬件组件

1.2.1计算机结构

1.2.2输入/输出设备

1.2.3主存储器和辅助存储器

1.2.4中央处理器

自测题(答案见附录M)

1.3网络

1.3.1网络连接

1.3.2局域网和广域网

1.3.3因特网

1.3.4万维网

1.3.5统一资源定位器

自测题(答案见附录M)

1.4java编程语言

1.4.1Java程序

1.4.2注释

1.4.3标识符和保留字

1.4.4空白符

自测题(答案见附录M)

1.5程序开发

1.5.1编程语言级别

1.5.2编辑器、编译器和解释器

1.5.3开发环境

1.5.4语法和语义

1.5.5错误

自测题(答案见附录M)

1.6面向对象编程

1.6.1问题求解

1.6.2面向对象的软件原理

自测题(答案见附录M)

重点概念小结

练习题

编程项目

 

第2章数据与表达式

2.1字符串

2.1.1print和println方法

2.1.2字符串拼接

2.1.3转义序列

自测题(答案见附录M)

2.2变量与赋值

2.2.1变量

2.2.2赋值语句

2.2.3常量

自测题(答案见附录M)

2.3基本数据类型

2.3.1整型与浮点型

2.3.2字符型

2.3.3布尔型

自测题(答案见附录M)

2.4表达式

2.4.1算术运算符

2.4.2运算符优先级

2.4.3自增和自减运算符

2.4.4赋值运算符

自测题(答案见附录M)

2.5数据类型转换

2.5.1类型转换的安全性

2.5.2数据类型转换技术

自测题(答案见附录M)

2.6交互式程序

2.6.1Scanner类

自测题(答案见附录M)

2.7图形

2.7.1坐标系统

2.7.2彩色图形

自测题(答案见附录M)

2.8JAVAappLET

2.8.1applet的基本概念

2.8.2在web中执行applet

自测题(答案见附录M)

2.9绘图

2.9.1Graphics类

自测题(答案见附录M)

重点概念小结

练习题

编程项目

 

第3章类与对象

3.1创建对象

3.1.1对象引用变量的声明与初始化

3.1.2别名

自测题(答案见附录M)

3.2STRING类

自测题(答案见附录M)

3.3包

3.3.1包的概念

3.3.2import声明

自测题(答案见附录M)

3.4RANDOM类

自测题(答案见附录M)

3.5MATH类

自测题(答案见附录M)

3.6格式化输出

3.6.1NumberFormat类

3.6.2DecimalFormat类

3.6.3printf方法

自测题(答案见附录M)

3.7枚举型

自测题(答案见附录M)

3.8包装器类

3.8.1包装器类的创建和使用

3.8.2自动装箱

自测题(答案见附录M)

3.9组件与容器

3.9.1框架和面板

3.9.2布局管理器

自测题(答案见附录M)

3.10嵌套的面板

自测题(答案见附录M)

3.11图像

自测题(答案见附录M)

重点概念小结

练习题

编程项目

 

第4章编写类

4.1类与对象的回顾

自测题(答案见附录M)

4.2类的分析

4.2.1实例数据

4.2.2UML类图

自测题(答案见附录M)

4.3封装

4.3.1可见性修饰符

4.3.2访问器和修改器

自测题(答案见附录M)

4.4方法的分析

4.4.1return语句

4.4.2参数

4.4.3局部数据

4.4.4银行账户实例

自测题(答案见附录M)

4.5构造方法回顾

自测题(答案见附录M)

4.6图形对象

自测题(答案见附录M)

4.7图形用户界面

自测题(答案见附录M)

4.8按钮

自测题(答案见附录M)

4.9单行文本框

自测题(答案见附录M)

重点概念小结

练习题

编程项目

 

第5章条件判断与循环

5.1布尔表达式

5.1.1相等性运算符和关系运算符

5.1.2逻辑运算符

自测题(答案见附录M)

5.2IF语句

5.2.1if-else语句

5.2.2使用语句块

5.2.3if语句的嵌套

自测题(答案见附录M)

5.3数据比较

5.3.1浮点数比较

5.3.2字符比较

5.3.3比较对象

自测题(答案见附录M)

5.4WHILE语句

5.4.1无限循环

5.4.2嵌套循环

5.4.3break和continue语句

自测题(答案见附录M)

5.5迭代器

5.5.1迭代器对象的基本方法

5.5.2读取文本文件

自测题(答案见附录M)

5.6ARRAYLIST类

自测题(答案见附录M)

5.7确定事件源

5.8复选框与单选钮

5.8.1复选框

5.8.2单选钮

重点概念小结

练习题

编程项目

 

第6章其他条件判断与循环

6.1SWITCH语句

自测题(答案见附录M)

6.2条件运算符

自测题(答案见附录M)

6.3DO语句

自测题(答案见附录M)

6.4FOR语句

6.4.1for-each循环

6.4.2各种循环的比较

自测题(答案见附录M)

6.5利用循环语句和条件语句绘图

6.6对话框

重点概念小结

练习题

编程项目

 

第7章面向对象设计

7.1软件开发活动

自测题(答案见附录M)

7.2明确类和对象

7.2.1类的识别方法

7.2.2类职责的分派

自测题(答案见附录M)

7.3静态类成员

7.3.1静态变量

7.3.2静态方法

自测题(答案见附录M)

7.4类间关系

7.4.1依赖关系

7.4.2同一个类对象之间的依赖性

7.4.3聚合关系

7.4.4this引用

自测题(答案见附录M)

7.5接口

7.5.1Comparable接口

7.5.2Iterator接口

自测题(答案见附录M)

7.6枚举类型

自测题(答案见附录M)

7.7方法设计

7.7.1方法分解

7.7.2方法参数的传递方式

自测题(答案见附录M)

7.8方法重载

自测题(答案见附录M)

7.9测试

7.9.1审查

7.9.2缺陷测试

自测题(答案见附录M)

7.10GUI设计

自测题(答案见附录M)

7.11布局管理器

7.11.1流式布局管理器

7.11.2边界布局管理器

7.11.3栅格布局管理器

7.11.4盒式布局管理器

自测题(答案见附录M)

7.12边框

自测题(答案见附录M)

7.13容器层次结构

自测题(答案见附录M)

重点概念小结

练习题

编程项目

 

第8章数组

8.1数组元素

自测题(答案见附录M)

8.2声明和使用数组

8.2.1边界检查

8.2.2数组声明方式

8.2.3数组初始值表

8.2.4数组作为参数

自测题(答案见附录M)

8.3对象数组

自测题(答案见附录M)

8.4命令行实参

自测题(答案见附录M)

8.5可变长度参数表

自测题(答案见附录M)

8.6二维数组与多维数组

……

第9章继承

第10章多态性

第11章异常

第12章递归

第13章集合

前言

  本书是基于下面的基本思想编写的,相信这有助于使其成为一本优秀的教材。

  真正的面向对象。讲解完全面向对象方法的教材必须使用对象语言,即所有问题都应该用面向对象的术语来讨论。但这并不意味着对书中的**个程序就必须讨论多个类和方法的编写方式,学生应当在学会编写对象之前先了解如何使用对象。本书采用一种自然的学习进程,使学生逐步达到具有设计实际的面向对象解决方案的能力。

  良好的程序设计实践。本书的主要目的不是教学生如何编程,而是讲解如何写出好的软件。二者是有差别的。编写软件并不是按照说明完成一套动作,一个好程序也远非仅仅是一些语句的集合。本书汇集了一些可作为良好程序设计基础的实践经验,它们不仅应用于本书所有的实例,而且还会在讨论中进一步强化。学生将学会如何解决问题以及如何实现设计方案。全书贯穿了基本的软件工程技术的讲解,“软件失误案例”通过生动的实例展示了不遵循这些程序设计实践原则所带来的后果,它们是软件工程基本技术的补充。

  程序实例。通过程序实例来学习编程是一种**途径。全书通过大量已完整实现的实例来讲解特定的概念。书中穿插列举了易理解的小例子和实用的大例子,二者相辅相成,并对图形和非图形实例的采用进行了合理的选择。此外,“视频讲解”部分以生动的形式提供了更多的程序设计实例。

  图形用户界面。图形能够激发学生极大的学习兴趣,而且图形设计可以充当面向对象应用的绝佳实例。因此,本书每一章都安排了精心设计的几部分,称为“图形设计之路”,它们包含事件处理和图形用户界面的使用。随着图形设计主题讨论的进展,学生将很自然地学会以适当的方式创建GUI。对于不需要学习图形设计的学生,则可以跳过这部分内容。

  各章概述

  第1章(计算机系统概述)一般性地介绍计算机系统,包括计算机基本结构和硬件、网络、程序设计及语言翻译。本章对Java也进行了介绍,并讨论了通用程序开发的基础和面向对象编程。这一章广泛涵盖了学生需要了解的开发环境介绍。

  第2章(数据与表达式)探讨Java程序中使用的一些基本数据类型和计算表达式的用法,还讲解了数据类型间的转换及如何借助标准的Scanner类与用户进行交互式输入。

  第3章(使用类和对象)讲解预定义类的使用及其对象的创建方法。这些类和对象用于处理字符串、产生随机数、执行复杂计算和格式化输出。此外还讨论了枚举数据类型。

  第4章(编写类)分析了与类和方法的编写有关的问题,包括实例数据、可见性、引用范围、方法参数和返回类型。此外还讨论了封装和构造方法。与编写类相关的其他问题在第6章讨论。

  第5章(条件判断和循环I)讨论用于判断的布尔表达式的用法,然后详细地讲解了if语句和while循环语句。一旦建立了循环,就可引入迭代的概念,并进一步讨论用Scanner类不断接收、解析输入数据及读取文本文件的方法。*后,介绍了可用于管理大量对象的ArrayList类。

  第6章(条件判断和循环II)讨论第5章未涉及的其他Java条件语句(switch)和循环语句(do,for),包括for循环语句的增强版本。for-each循环语句也可用于处理迭代和ArrayList对象。

  第7章(面向对象设计)进一步深入和扩展了关于类的设计问题的讨论,包括解决问题时需要确定类和对象的识别技术,以及类与对象间的关系。本章还探讨了静态类成员、接口及枚举型类的设计。这一章对方法设计和方法重载也进行了讨论。

  第8章(数组)详细讲解了数组及数组的处理。将作为*基本的程序设计数据结构的数组与高层次的对象管理方法进行了对比分析。此外,还讨论了命令行参数、可变长度参数表及多维数组。

  第9章(继承)讲解类的派生及其相关概念,例如类层次、重写和可见性。本章还强调了应合理使用继承性,以及在软件设计中使用继承的原则。

  第10章(多态)探讨了绑定的概念及绑定与多态性的关系。接着,讲解了如何使用继承或接口实现多态性,并利用排序示范了多态性。*后,讨论了有关多态性的程序设计问题。

  第11章(异常)关注Java标准库中用于定义异常的类层次结构,以及定义用户异常对象的方法。同时还讨论了处理输入/输出异常时的方法,并分析了一个编写文本文件的程序实例。

  第12章(递归)讲解递归的概念、递归的实现及合理使用递归的方法,并利用几个不同应用领域的程序实例,演示了递归技术如何使得某些特定问题解决得更完美。

  第13章(集合)涉及集合的概念及其基本数据结构,并进一步探讨了抽象概念和经典的数据结构。此外,还介绍了泛型。本章可作为CS2(计算机科学课程第二阶段)的入门性内容。