Java入门经典(第6版)(txt+pdf+epub+mobi电子书下载)


发布时间:2021-01-27 13:22:58

点击下载

作者:(美)RogersCadenhead著

出版社:人民邮电出版社

格式: AZW3, DOCX, EPUB, MOBI, PDF, TXT

Java入门经典(第6版)

Java入门经典(第6版)试读:

前言

作为一名计算机图书作者,我花费了大量的时间呆在书店的计算机图书区,在假装阅读最新一期《In Touch Weekly》杂志的同时,观察读者阅读图书的行为。

根据我的观察,读者拿起本书并翻到前言后,在他将书放下前往咖啡厅喝杯咖啡前,给我留下的时间只有大约12秒。

因此,这里长话短说:使用Java来进行计算机编程比想象的容易。我本不应该这样说,因为数以千计的程序员正是凭借其Java技能在软件开发、Web应用程序编程和移动app开发领域获得了高薪职位,对他们来说,最不想让老板知道的是,只要坚持不懈并有一点空闲时间,任何人都能学会当前使用最为广泛的编程语言。通过阅读本书,你可以快速掌握Java编程。

任何人都能学会如何编写计算机程序,尽管他们不能对DVR进行编程。Java是最值得学习的编程语言之一,因为这种功能强大的实用技术已被全球大量的程序员采用。

本书是为非程序员、讨厌学习编程的程序员新手,以及经验丰富但想快速掌握Java的老程序员编写的。本书使用的是该语言的最新版本——Java 7。

由于Java具有“让一切成为可能”的特性,因此成为一种非常流行的编程语言。你可以使用Java来创建具有图形用户界面的程序、设计充分利用Internet的软件、读取XML数据、开发在Android手机上运行的游戏,等等。

本书引导读者从零开始学习Java编程,它以平实的语言阐述概念,并包含大量要求读者逐步创建的示例程序。读完本书,读者就能编写自己的Java程序,对自己使用该语言的能力充满信心,进而更深入地学习它;读者还将获得日益重要的技能,如网络计算、图形用户界面设计和面向对象编程。

就当前而言,这些术语对你来说也许并不重要。事实上,正是它们使得人们对编程充满了恐惧,并认为很难掌握。然而,如果你能使用计算机计算账目的收支平衡,或者能在Facebook上创建电子相簿,通过阅读本书就能够编写计算机程序。

现在,如果你还是愿意去喝咖啡而不是学习 Java,请将本书放回书架,并将封面朝向书店中人来人往的通道,以方便别人找到它。第1章成为程序员

本章介绍如下内容:选择要学习的编程语言;使用程序来让你的计算机运转起来;程序的工作原理;修复程序中的错误;选择Java开发工具;为编写程序做好准备。

你可能听到过下面有关计算机编程的说法:计算机编程极其困难,它要求你获得计算机科学专业的学位,需要投入几千美元来购买计算机硬件和软件,需要极强的分析能力,需要有耐心,而且对含咖啡因的饮料有强烈的爱好。

其实,在上述条件中,除喜欢喝含咖啡因的饮料外,其他所有条件都是不正确的。尽管多年以来计算机程序员一直都说编程很难,而且这种说法可以让程序员更容易找到高薪工作,但是,编程工作其实比大多数人想象的要容易。

现在是学习编程的最佳时代。我们可以从Internet上免费下载各种编程工具,数以千计的程序员以开源的形式发布他们编写的程序,以方便他人检查并修正程序中的错误,以及对程序进行改进。即使是在经济紧缩时期,许多公司也仍然在招聘程序开发人员。

如今,数以百万计的移动设备采用的都是 Android(其所有应用程序都以 Java 语言编写的一种操作系统)。如果你有一台Android手机,每当你在搜索电影、进行导航服务,以及玩“愤怒的小鸟”游戏时,你用到的都是Java程序员开发的软件。

本书旨在向两类人群讲授Java编程知识:没有任何编程知识的人,有过编程经验但是又讨厌编程(如同伏地魔讨厌英国孤儿院的孩子一样)的人。本书尽可能采用通用语言而不是行话或者晦涩的首字母缩写,并对新出现的编程术语进行详细解释。

如果这种尝试得以成功,那么读者在读完本书后将获得丰富的编程技能,而这些技能对读者来说曾经是一种挑战。阅读本书后,读者将能够编写程序,更自信地阅读其他编程图书,从而更轻松地学习新的编程语言(请注意,我说的是“编程”语言,而不是西班牙语、法语以及克林贡这种外星语言)。当然,读者也会掌握Java这种应用最为广泛的编程语言。

本章将会简单介绍编程的概念,然后讲解计算机的一些设置指令,以为编写Java程序做好准备。1.1 选择编程语言

如果你能够娴熟地使用计算机来准备一个漂亮的简历,或者是计算账目的收支平衡,抑或是将你在假期中拍摄的照片上传到 Facebook 上与他人共享,那么你就能在计算机上编写程序。

学习计算机编程的关键是选择一门合适的语言,而编程语言的选择往往与所要完成的任务有关。每一种编程语言都非尽善尽美。多年以来,人们在学习编程时,使用的都是各种版本的BASIC编程语言,原因是BASIC针对的就是初学者。

注意:

BASIC语言发明于20世纪60年代,它的初衷是方便学生和初学者学习,BASIC中的字母B代表初学者(Beginner’s)。使用BASIC语言的缺点是容易养成马虎的编程习惯。

人们使用 Microsoft Visual Basic 编写了数千个复杂的用于商业目的或个人用途的程序。但是,使用 Visual Basic 的各种版本编写的程序在运行速度上要比其他语言(比如 C#和 Visual C++)编写的慢。当程序中使用了大量的图形时(比如游戏),这种速度差异更为明显。

本书讲解的Java编程语言是由Oracle公司开发的(译者注:Java语言其实是由Sun公司开发的,但是Sun公司于2010年被Oracle公司收购,所以作者在这里说“Java编程语言是由 Oracle开发的”)。虽然 Java 语言学习起来比 Visual Basic等语言困难,但基于几个原因,将其作为入门语言仍然是不错的选择。学习 Java 的优点之一是你可以在 Web 和移动手机上使用Java语言。你可以使用Java语言来为Android手机开发应用程序,可以开发网页游戏,还可以将其用在其他热门的软件开发领域。

Java语言的另外一个重要的优点是:程序要想运行,则程序语句必须要组织有序。如果你不遵守这些规则,则编写的Java程序将无法运行。

刚开始编写 Java 程序时,你可能觉得 Java 的这种挑剔行为不是优点。编写完程序后,你可能要修改多处错误才能让程序通过编译,从而对这种程序编写方式产生厌烦心理。

在接下来的几章中,将介绍Java的这些规则以及应避开的陷阱。这些额外工作带来的好处是,程序将更可靠、更有用且没有错误。

Java 是由 Sun 公司的 James Gosling 开发设计的,旨在提供一种更好的计算机编程方式。Gosling在开发一个项目时,不喜欢编程语言C++的工作方式,因此决定创建一种能够更好地完成这项工作的新语言。虽然在 Java 是否优于其他编程语言这一点上存在分歧,但 Java 在过去10年中取得的成就已经证明了它本身的优势。世界上30亿台设备运行的是Java程序。从Java面世到现在,已经出版了1000多种与它相关的图书(这是我们的第16本Java图书)。

不管Java是不是最好的语言,但肯定是当今最值得学习的编程语言。在第2章,读者将有机会尝试编写Java程序。

学习任何一种编程语言后,再学习其他编程语言将会比较容易。很多语言彼此相似,因此在学习新语言时,不用完全从头开始。例如,很多 C++或 Smalltalk 程序员发现学习 Java相当容易,因为Java从这些编程语言中借鉴了许多思想。同样,C#编程语言也从Java借鉴了很多思想,所以Java程序员也很容易就能学会C#编程语言。

注意:

本章多次提到了 C++,也许读者不明白它指的是什么,以及它是如何发音的。C++可以读成“C 加加”,它是由贝尔实验室的 Bjarne Stroustrop开发的一种编程语言。C++是C语言的增强版,这就是C++中“++”的含义。那为什么不叫C+呢?本书后面将介绍,++是一个计算机编程笑话。1.2 告诉计算机做什么

计算机程序也叫软件,它告诉计算机该做什么。计算机执行的任何操作(从启动到关机)都是由程序控制的。Windows 7 是程序,Call of Duty游戏是程序,安装的打印机驱动软件是程序,甚至邮件病毒也是程序。

计算机程序由一系列命令组成,程序运行时,计算机按特定顺序处理这些命令。其中的命令称为语句。

如果你的家里雇佣了一名管家,而且你拥有高度紧张的A型人格,你需要为管家制定一组详细的命令供其遵循,如下所示。

亲爱的Jeeves先生,在我外出向国会请求紧急援助之时,请完成下述工作:

1.用吸尘器打扫房间;

2.去商场;

3.买些酱油、芥末,并尽可能多买些加州寿司卷;

4.回家。

谢谢!

Bertie Wooster

如果你告诉管家做什么,那么他就会灵活地完成你安排的任务:如果加州寿司卷卖没了,你的管家会给你买波士顿卷。

但是计算机的处理方式不会这么灵活。它会按照你编写的程序严格执行,一次执行一个语句。

下面是一个采用BASIC语言编写的计算机程序示例,相当简单。现在我们来看一下这个程序,请读者不要纠结于该程序每一行所代表的意思。

将该程序翻译为自然语言,就相当于让计算机来执行如下事情:

亲爱的个人计算机,

1.请显示问题“Shall we play a game?”

2.给用户一个回答该问题的机会。

爱你的 Snookie Lumps

计算机程序中的每一行都是一条语句。计算机按特定顺序处理程序中的每条语句,就像厨师按菜谱炒菜,或管家Jeeves先生按照Bertie Wooster的指示行事那样。在BASIC语言中,行号用于标识语句的顺序。其他语言(如Java)不使用行号,而是使用不同的方式告诉计算机如何运行程序。

图1.1是一个BASIC程序示例,该程序运行的是Joshua Bell的AppleSoft BASIC解释器。该解释器在Web浏览器中运行,读者可在www.calormen.com/Applesoft找到它。图1.1 一个 BASIC 程序示例

鉴于程序的运行方式,如果程序运行时发生错误,不能责怪计算机。毕竟,计算机只是严格按照你的指令去做。因此程序的运行错误应该归咎于程序员。这真是一个坏消息。

当然,好消息是,对编程人员和计算机而言,都不会造成永久伤害。出版本书的过程中没有人受到伤害;你在学习使用Java编程时,也不会损坏计算机。

注意:“Shall we play a game(玩个游戏怎么样)”摘自1983年的电影War Games。在该影片中,Matthew Broderick扮演的年轻计算机程序员在全球几乎爆发热核战争时挽救了人类。1.3 程序的工作原理

大多数计算机程序的编写方式都相同,就像写信一样:在文本编辑器中输入每条语句。有些编程工具自带了编辑器,而有些编程工具则可以与任何文本编辑软件一起使用。

编写好计算机程序后,像保存其他文档一样将其存盘。计算机程序通常有它们自己的扩展名,用于指出所属的文件类型。Java程序的扩展名为.java,如Calculator.java。

为了运行保存为文件的程序,你需要某些帮助。所需要的帮助类型取决于你使用的编程语言。有些语言需要解释器来运行程序。解释器是对每条计算机程序的每一行语句进行解释,告诉计算机做什么的程序。大多数版本的 BASIC 都是解释型语言。解释型语言的优点是可以快速进行测试。使用BASIC语言编写程序时,可以立即进行测试,找出错误并修正,然后再试。解释型语言的主要缺点是运行速度比其他程序慢。

其他编程语言需要编译器。编译器将计算机程序翻译成计算机能够理解的格式;它还尽可能地对程序进行优化,使其高效运行。编译后的程序不需要解释器就可直接运行,且运行速度比解释型程序快,但测试起来需要更多的时间。在测试前,需要编写并编译程序。发现错误并修复后,必须重新编译,以确定错误是否已消除。

Java的独特之处在于,它同时需要编译器和解释器,后面编写Java程序时,读者将更详细地了解这一点。

注意:

如果使用的文本编辑器是一款字处理程序,能够支持粗体、字号或其他格式化功能,则在编写计算机程序时不要使用这些功能。程序应该是没有任何特殊格式的文本文件。Windows 操作系统自带的字处理程序 Notepad将所有文件都保存为无格式的文本文件。Linux 系统下的 vi 编辑器也可用于创建无格式的文本文件。1.4 为什么程序不能正常工作

很多编程新手在测试程序时感到气馁,因为到处都是错误。有些是语法错误,表明计算机不能识别程序中的语句;有些是逻辑错误,这种错误仅当测试程序时才能被程序员发现(它们也有可能被忽略掉)。逻辑错误不能被计算机识别,但导致计算机执行意想不到的操作。

开始写程序后,读者将经常遇到错误,这是必然的。编程错误被称为 bug,该术语起源于100年前甚至更早,那时指的是技术设备故障。修复错误的过程被称为调试(debugging)。现在有多种方法可以用来描述编程错误,而且这并不是一个巧合。不论是否愿意,在学习编写计算机程序的过程中,都将获得丰富的调试经验。1.5 选择 Java编程工具

在开始编写Java程序前,首先需要安装Java编程软件。当前有多种Java编程软件,其中包括 Java Development Kit、Eclipse、IntelliJ IDEA 和 NetBeans。每当 Oracle 发布 Java的新版本时,对其提供支持的第一款工具就是 Java Development Kit(JDK)。

为了创建本书中的程序,读者必须使用JDK版本7,或者是可以与它协同工作的其他编程工具。JDK是一组用来创建Java软件的免费的命令行工具。JDK不具备图形用户界面,如果你之前没有在诸如DOS或Linux这样的非图形界面环境中工作过,那么当你使用JDK时,将会感到束手无策。

Oracle 提供了另外一种免费的工具——集成了开发环境的 NetBeans,而且用它来编写Java代码会更加容易。NetBeans提供了图形用户界面、源代码编辑器、用户界面设计器,以及项目管理器等功能。它可以与运行在后台的JDK形成互补,因此在开始编写Java程序时,必须同时安装了这两种工具。

本书中的程序是用NetBeans编写的,用户可以下载NetBeans,并与JDK一起安装。当然,用户也可以使用其他 Java 工具,只要他支持 JDK 7。

注意:

Oracle以Web页面的形式提供了详尽的Java语言文档。在阅读本书时,你没有必要查看该文档,因为本书对每一个主题都进行了详细的讨论。当时当编写程序时,这些页面将会派的上用场。

你可以将整个文档下载下来,当然也可以在需要时,在 Oracle 的网站上在线阅读,这无疑更为方便。用户可以从http://download.oracle.com/javase/7/docs/api下载最新的Java文档。1.6 安装 Java开发工具

本书每章都以一个Java编程项目收尾,你可以通过该项目来加深对相关主题知识的理解。

如果你的计算机上没有安装Java编程工具,也就不能进行Java编程。

如果你有诸如NetBeans或JDK这样的开发工具,你可以用它来开发本书后面23章中的示例程序。然而,读者应熟悉如何使用这些工具,因为同时学习如何使用Java和复杂的开发工具可能令人畏惧。

如果你还没有 Java 开发工具,则可以考虑使用 NetBeans 7,用户可以从 Oracle 的站点www.netbeans.org上免费下载该工具。

有关下载和安装NetBeans的方法,请阅读附录A。1.7 总结

本章介绍了有关计算机编程的概念:提供一组指令,告诉计算机做什么。读者也可以下载并安装Java开发工具,以用来编写本书所有的示例程序。

如果读者仍不清楚程序、编程语言或Java等概念,也不要气馁。下一章将详细介绍Java程序的创建过程,届时,读者将会明确上述这些概念。1.8 问与答

问:BASIC、C++、Smalltalk、Java等语言的名字是什么意思?

答:BASIC是Beginner’s All Symbolic Instruction Code的首字母的缩写。C++是为了改进C语言而创建的编程语言,而C语言是B编程语言的改进版。Smalltalk是一种革命性的面向对象的编程语言,开发于20世纪70年代,而且它的很多理念都被Java所采用。

Java没有采用传统语言的命名方式:使用首字母缩写或其他有意义的名称。Java是Java开发者最喜欢的名称,它击败WebRunner、Silk、Rube等名称脱颖而出。当我创建属于我的第一个编程语言时,会将它命名为Salsa——因为每个人都喜欢它嘛!

问:为什么解释型语言的速度比编译型语言慢?

答:原因与现场翻译的速度比翻译书面演讲稿慢相同。现场翻译时,翻译人员需要思考刚刚讲过的每句话,然而其他翻译人员可将演讲作为一个整体,并采取优化的方式以提高翻译速度。编译型语言比解释型语言快得多,是因为可以采取措施提高程序的运行效率。1.9 测验

通过回答下列问题来检测对本章介绍的知识的掌握程度。1.9.1 问题

1.人们认为计算机编程很难,下面哪个不是其原因?

a.程序员散布该谣言,以提升就业前景。

b.到处充斥行话和首字母缩写。

c.认为编程很难学习的人可以有资格获得政府的援助。

2.下面哪种工具以每次一行的方式运行计算机程序?

a.缓慢的工具。

b.解释器。

c.编译器。

3.Javes Gosling 为什么要发明 Java?

a.他对在一个项目中使用的语言不满意。

b.他的摇滚乐队当时没有任何表演。

c.如果在工作期间不能浏览YouTube,Internet将很单调。1.9.2 答案

1.c.计算机图书的作者也没有得到政府的援助。

2.b.编译器事先理解指令,所以程序运行起来更快。

3.a.他对C++感到失望。1.10 练习

如果想更多地了解关于Java和计算机编程的信息,可以:访问Oracle的Java站点,网址为www.oracle.com/technetwork/topics/newtojava,阅读该公司对Java技术的介绍;使用普通语言而不是编程语言编写一组指令,将用户选择的数字加10,再将结果乘以5。将这些指令分为多个短句子。

要获悉每章末尾的习题答案,请访问本书的配套网址:www.java24hours.com。第2章编写第一个程序

本章介绍如下内容:在文本编辑器中输入一个程序;使用class语句对Java程序进行命名;使用括号组织程序;将信息存储到变量中;显示存储在变量中的信息;保存、编译和运行程序;修复错误。

第 1 章已经提到,计算机程序是一组告诉计算机做什么的指令。这些指令使用编程语言输入到计算机中。

在本章,读者将通过将指令输入到文本编辑器的方式来创建第一个Java程序。输入完毕之后,可以保存、编译并测试该程序。2.1 编写程序所需的工具

第1章讲到,要创建Java程序,你必须有支持Java Development Kit(JDK)的开发工具,比如NetBeans集成开发环境(IDE)。你还需要可以编译和运行Java程序的工具,以及用来编写Java程序的文本编辑器。

对于大多数编程语言来说,计算机程序都是通过在文本编辑器(也称为源代码编辑器)中输入文本的方式来编写的。有些编程语言自带了文本编辑器。Oracle的开发工具NetBeans就包含了用来编写Java程序的编辑器。

Java程序是简单的文本文件,没有诸如文本居中、粗体等其他特别格式。NetBeans源代码编辑器很像一个功能增强了的简单文本编辑器。彩色文本用来识别用户输入的不同元素。NetBeans本身也带有适当的缩进格式,以及有用的编程文档。

由于 Java程序是文本文件,因此可以使用任何文本编辑器打开Java程序,并对其进行编辑。你也可以使用NetBeans编写Java程序,然后在Windows Notepad(记事本)中打开它,并做出相应的修改,然后再在NetBeans中打开该程序,这不会造成任何问题。2.2 创建 Saluton 程序

读者将创建的第一个 Java 程序显示计算机科学界的传统问候语“Saluton mondo!”。

在NetBeans中输入第一个程序之前,先采取如下步骤来创建一个称为Java24的新项目。

1.选择菜单命令 File->New Project。

2.选择项目分类“Java”和项目类型“Java Application”,然后单击 Next 按钮。

3.输入“Java24”作为该项目的名称。如果之前已经创建了该项目,则会看到错误信息“Project folder already exists and is not empty”。

4.取消选中“Create Main Class”复选框。

5.单击Finish按钮。

Java24项目在其文件夹中建立起来。在阅读本书的过程中,你可以为编写的所有Java程序使用这个项目。2.3 开始输入程序

NetBeans将所有相关的程序分组列入到一个项目中。如果你还没有打开Java24项目,可采用如下方式打开。选择菜单命令 File->Open Project。找到并选择NetBeansProjects文件夹(如果有必要)。选择 Java24,并单击 Open Project 按钮。

Java24项目出现在项目(Projects)面板中。

为了添加一个新的Java程序到当前的项目中,选择File->New File,打开New File Wizard对话框,如图2.1所示。

分类(Categories)面板会列出用户可以创建的所有 Java 程序的类型。在该面板中单击“Java”文件夹来查看属于该分类的文件类型。对本项目而言,选择“Empty Java File”类型,然后单击Next按钮。

在 Class Name 字段,输入“Saluton”,然后单击 Finish 按钮来创建新的 Java 程序。名为Saluton.java的空文件将在源代码编辑器中打开。

在源代码编辑器中,通过输入程序清单2.1中的每一行语句,由此开启你的Java编程生涯。这些语句称为程序的源代码。图2.1 New File Wizard对话框

警告:

不要输入每行前面的行号和冒号,它们在本书中的目的是方便引用代码。

程序清单2.1 Saluton程序

确保大小写与该程序清单中一致,并使用空格键或Tab键在第2~第4行前面插入空白。当输入完后,选择 File->Save,然后单击 Save All Files 按钮来保存文件。

当前,Saluton.java 只包含 Java 程序的架构。读者可以创建多个开头与此相同的程序,当然,第1行的单词Saluton除外。该单词表示程序的名称,而且每个程序都不同。第3行是一个英语句子。其他内容对你来说是全新的。2.3.1 class语句

程序的第1行如下:

把这句话翻译成自然语言的意思是:计算机,请将我的Java程序命名为Saluton。

第1章讲到,输入到计算机的每条指令都被称为语句。class语句让你能够给计算机程序指定名称,它还可以确定程序的其他方面,这

试读结束[说明:试读内容隐藏了图片]

下载完整电子书


相关推荐

最新文章


© 2020 txtepub下载