图书前言

编写本书的目的是为了提供一本零起点、全面介绍面向对象程序设计的教程。本书的读者不需要了解C/C++或其他计算机语言及其程序设计的知识,但应该对程序、数据、二进制编码、文件、CPU、存储器、输入输出设备等概念有所理解。通过本书内容的学习,将为读者进一步学习各种Java技术、构建面向对象的软件系统以及网上应用系统打下坚实的基础。

Java是一种完全面向对象的程序设计语言,适合于进行面向对象的软件系统开发和开发出真正的面向对象的软件系统。在Java中,除了数值、字符、布尔型几种基本类型数据外,其他所有类型的数据都是用对象来表示的。一个对象既包含了表示其状态的数据,也包含了描述其行为的方法。而对一个对象的数据的访问,则是通过向对象传递消息、调用对象的方法进行的。这就是所谓的对象处理方式。

从作者多年学习和教学的经验来看,学习Java编程的最大困难在于建立面向对象的思维方式、熟悉面向对象的编程风格。而类和对象的概念则是其中的基础。为此,本书在第1章Java程序初步就引入类和对象的概念,并通过一个简单的例子加以具体的说明。第2章和第3章在介绍数据与数据处理、Java语句时进一步强化类和对象的概念,以及面向对象编程的思维方式。然后,以此为基础,在第4、第5章再系统地介绍Java面向对象的编程方法和技能。

字符串和数组是几乎所有的计算机语言都支持的两种基本数据结构。与大多数计算机语言不同,Java用对象来表示字符串和数组,并采用对象的方式处理。第6、第7章分别专门介绍字符串和数组的使用,同时也为了进一步巩固面向对象的编程技能。

例外处理、线程与同步和输入输出是Java编程的几项基础技术,是开发各种Java应用软件所必不可少的。本书第8、第9、第10章也用较大的篇幅分别对它们进行了介绍。在这里,例外、线程、输入输出流同样是对象,对这些编程技术的掌握也都需要建立在对象和对象处理的概念之上。

图形用户界面(GUI)设计是许多读者感兴趣的课题。从1995年发布的Java 1.0版到现在的1.4版,有关图形用户界面设计的内容已经发生了很大变化。特别是,1.1版用事件委托模型替代原先的事件传递机制来处理事件;1.2版在原先AWT组件的基础上引进了Swing组件,并建议用Swing取代AWT。本书第11、第12章分别介绍了基于Swing的图形用户界面和小应用程序的设计。同样地,图形用户界面和小应用程序设计中涉及的组件、事件、事件监听器、布局管理器等也都表示为对象并采用对象的方式进行处理。

全书立足基本理论和方法,注重实践与应用。从应用的角度来介绍基础理论知识,通过例子来说明编程的方法和过程。对基本理论、原理、方法和技术的介绍力求概念明确、结构清晰、逻辑严谨。

本书每一章的最后两部分是小结和习题。小结给出了一章的内容要点,便于读者复习与总结;习题主要有选择题和编程题两种形式,用以帮助读者检查学习效果,巩固已学知识,进一步提高能力。

感谢高林教授审阅了全书,并提出了许多宝贵的意见。同时也要感谢清华大学出版社谢琛老师为本书的出版所付出的辛勤工作。另外,作者在编写本书的过程中,参阅过大量的文献和网上资料,特别是Sun Microsystems公司Java网站(http://java.sun.com docs/books/)上的内容,在此一并表示感谢。

由于作者学识水平有限,错误和不妥之处,敬请广大读者批评和指正。如果读者有好的建议和要求,请与作者联系,电子邮件地址是loubuye@163.com。