本书充分利用Java5.0版的新增内容,从一开始就把有关面向对象的方法学内容贯穿其中,使初学程序开发的读者们能够逐步体会并深刻理解“对象”技术的强大功能。通过本书的学习,读者将学习到许多Java5.0里的新增内容,包括最新的用于简化键盘输入及解析过程的标准Scanner类、枚举类型、自动打包技术、可变长参数列表、经过优化的for循环和泛型等。此外,书中提供了大量与开发相关的技术要点提示,同时配合实用、有效的GUI应用程序,使读者能够迅速掌握并巩固所学到的知识。对于有志深入学习Java程序开发语言的初级程序员,或者那些有一定经验并希望把Java作为自己另一项开发工具的程序员来说,本书都将是他们的首选教程。本书前言欢迎使用本书。多年以来本书能够一直服务于广大师生,我们感到非常高兴。新的第四版采用更加合理的教学方法,并对这门软件基础课程进行了全面系统的讲解。本书新增内容本书未对第三版做重大改动,重点仍旧放在一些最基础的核心概念上。每一章的图形设计导航部分将图形介绍与图形用户界面分开进行编排,程序的编写风格及所使用的一些较为有趣的实例也将延续第三版的内容。第四版着重强调了在教学中如何使用新的知识点,涉及到的一些内容可能会出现在其他相关的Java程序课程的学习当中。所有讨论与实例均采用Java2标准1.5版完成,该版中新增加的知识点包括:●标准Scanner类,用来简化键盘输入与解析过程。●枚举类型。●自动打包技术,将基本类型转换为包装类对象,反之亦然。●可变长参数列表。●改进的for循环,提高集合的迭代效率。●泛型,用来改善集合类的定义。针对面向对象概念的提出,我们采用的是一个循序渐进的过程。在讲授条件语句与循环语句之前,本书就为读者阐明了在类的编写过程中需要注意的一些关键性要素。与此同时,我们在各个章节当中编排进了一些具体的类的实例,同时在类的设计中还适当地增加了一些相关的重点内容。本书将始终强化面向对象的概念,包括如何识别类、对象以及它们之间的关系等技术。在每一章的图形设计导航部分,我们对图形用户界面(GUI)的内容重新进行了编排,使之更加符合逻辑。第三版中有关GUI一章的内容现已分散到了整本书中。这里给出的大多数GUI及图形实例均为基于图文框的Java应用程序,而并未使用JavaApplet程序。有关Applet程序的细节请参考附录G。附录中的参考材料已增加了许多新的主题,包括GUI事件总览、执行解析规则的Scanner类,等等。经过修订的全新内容将在本版中得到进一步体现,我们会在后面详细进行讨论。本书重点作为一本内容全面的基础性教程,本书将围绕以下主题展开讨论:●完全面向对象的思想。任何一本真正讲授面向对象方法的课本都必须从对象出发,即所有处理过程都需要依照面向对象的术语来进行讨论。然而,这并不意味着学生看到的第一个程序就涉及多个类及方法。在掌握类和方法的编写之前,应教会学生如何使用它们。本书采用的是一个自然推进的教学方式,目的是最终能够让学生在实践中设计出面向对象的问题解决方案。●真实的编程体验。我们并不赞成仅仅教会学生如何编写程序,而是要让他们学会如何编写一个好的软件。这两者之间存在着差别。编写软件也不是像照着菜谱去做菜那样进行,一个好的程序绝不只是大量语句的堆积。本书汲取了很多来自实际编程中的体验,这将为培养良好的编程习惯打下一个坚实的基础。这些经验会运用到所有实例当中并在探讨中得到进一步强调,学生最终将学会如何解决并实现它们。本书中,我们还将引入并吸收许多来自软件工程方面的基础知识。●实例。完全通过实例来学习。本书利用大量的完整实例,介绍相关的主题。我们把一些规模较小、易读、易理解的实例结合为规模较大且更为实际的应用程序。在兼顾图形程序和非图形程序的同时,本书也各有侧重。●图形及GUI。带有图形的程序总能激发学生们的学习欲望,以这类程序作为讲授面向对象概念的实例会取得很不错的效果。因此,我们在本书中有针对性地安排了一个称为图形设计导航的部分,用它来介绍这方面的知识,包括事件的处理与GUI的使用等。通过对这些内容的不断学习,学生们将逐步掌握GUI的创建。不打算使用图形程序的读者则可以完全略过这部分内容。