您的位置 首页 java

清华毕业大佬,手把手教你Java程序设计环境,就看你敢不敢学

前言

在这一章中,主要介绍如何安装Java开发工具箱( jdk )以及如何编译和运行各种类型的程序:控制台程序、图形应用程序以及applet应用程序。使用JDK的方法是在 shell 窗口中键入命令行。然而,很多程序员更偏爱使用集成开发环境。为此,将在稍后介绍如何使用免费获得的开发环境来编译和运行Java程序。尽管学起来很容易,但集成开发环境需要吞噬大量资源,在编写小型程序时会给人带来烦恼。作为折中方案,再介绍一下如何使用可以调用 java 编译器并运行Java程序的文本编辑器。一旦弄清楚了本篇的技术,并选定了自己的开发工具,就可以学习探索Java程序设计语言了。

安装Java开发工具箱

Sun Microsystems公司为 Solaris 、Linux和Windows提供了Java 2 标准版(J2SE)的最新、最完全的版本。用于Macintosh和许多其他平台的版本仍处于各种不同的开发状态中,不过这些版本由相应平台的开发商授权并分发。

下载JDK

要想下载Java开发工具箱,必须到 Sun 网站进行搜寻,并在获得所需的软件之前弄清一些专业术语。

JDK是Java Development Kit的缩写。有点混乱的地方是:工具箱的版本1.2~1.4称为JavaSDK(Software Development Kit)。在某些场合下,还会看到这些旧术语。

另外,随处可见的术语J2SE是指“Java 2 Standard Edition”;J2EE是指“Java 2 EnterpriseEdition”;J2ME是指“Java 2 Micro Edition”。

Java 2这种提法是从1998年开始使用的。当时Sun公司的销售人员感觉通过增加小数点后面的数值来改变版本号并没有反映出JDK 1.2的重大改进。但是,由于在发布之后才意识到这个问题,所以决定将开发工具箱的版本号仍然沿用1.2,接下来的版本就是1.3、1.4和5.0。但是,“Java”平台被重新命名为“Java 2”。因此,就有了Java 2 Standard Edition Development Kit 的5.0版,即J2SE 5.0。

对于工程师来说,所有这一切都可能会引起困惑,而这正是没有把它投入市场的原因。

如果使用Solaris、Linux或Windows,就应该从下载Java软件开发工具箱。找到版本5.0或后续的版本,并选择自己的平台。

Sun公司曾经制作过将Java开发工具箱和集成开发环境捆绑在一起的产品。其中的集成开发环境,在不同时期,被命名为不同的名字,例如Forte、Sun ONE Studio、Sun Java Studio和 NetBeans 。我们无法知道每个人在登录Sun网站的时候,市场上正在热销什么。这里,我们建议大家只安装Java开发工具箱。如果最终决定使用Sun的集成开发环境,就可以从下载。

下载了JDK之后,接下来的安装过程请参阅不同平台的安装指南。在编写这本书的时候,可以在网站 上搜寻到安装指南。

只有Java的安装过程和编译命令与系统有关。一旦安装并运行了Java,本书阐述的所有内容都适用。与环境无关性是Java的一个主要优势。

设置执行路径

在完成了JDK的安装之后,还需要执行一个附加步骤:把 jdk/ bin 目录添加到执行路径中。所谓执行路径是指操作系统搜寻本地可执行文件的目录列表。对于不同的操作系统,这个步骤的操作过程也有所不同。

• 在 UNIX (包括Solaris和Linux)环境下,编辑执行路径的过程与所使用的shell有关。如果使用的是C shell(Solaris的默认选择),在 ~/.cshrc文件的末尾就要添加:

set path = (/usr/local/jdk/bin $path)

如果使用的是Bourne Again shell(Linux的默认选择),在 ~/.bashrc文件或 ~/.bash_profile文件的末尾就要添加:

export PATH = /usr/local/jdk/bin:$PATH

对于其他的UNIX shell 来说,需要搞清楚具体的类似过程。

• 在Windows 95/98/ME环境中,在c:autoexec.bat文件的末尾需要放置一行:

SET PATH = c:jdk bin;%PATH%

注意在“=”两侧不要留空格。必须重新启动计算机,这个设置才能够生效。

• 在Windows NT/2000/XP环境下,启动控制面板,选择System,再选择Environment。在User Variables窗口中找到PATH变量名。(如果想让机器上的所有用户都能够使用Java工具,就需要使用系统变量窗口完成这个操作步骤。)将 jdk bin目录添加到路径的开头,并使用分号将新项隔开。如下所示:

c:jdk bin; other stuff

将这个设置保存起来,打开的任何控制窗口都将有正确的路径。

可以使用下面的步骤测试上面的设置是否正确:

1)打开一个shell窗口。后面的操作将取决于所使用的操作系统。键入:

java-version

2)然后,按ENTER键。应该能够看到如下的显示信息:

java version “5.0”

Java(TM) 2 Runtime Environment, Standard Edition

Java HotSpot(TM) Client VM

如果看到的是“java:command not found”、“Bad command or file name” 或“The name specified

is not recognized as an internal or external command, operable program or batch file”,就需要回到

前面,重新检查整个的安装过程。

安装库源代码和文档

源文件 在JDK中以一个压缩文件src.zip的形式发布,必须将其解压缩后才能够访问源代码。

这里强烈地建议这样做。步骤很简单,如下所示:

1)确保JDK已经安装,并且 jdk/bin目录在执行路径中。

2)打开shell窗口。

3)进入 jdk目录(例如:cd /usr/local/jdk5.0或cd c:jdk5.0)。

4)建立一个子目录src:

mkdir src

cd src

5)执行命令:

jar xvf ../src.zip

(或者在Windows中执行jar xvf ..src.zip。)

该文档在一个与JDK分开的压缩文件中。

可以从下载该文档。其中提供了多种格式(.zip、.gz和.Z)。选择一种最适合你的格式。如果难以确定的话就使用zip文件,因为这样可以使用JDK中的jar程序对zip文件进行解压缩。执行下面的步骤:

1)确保已经安装了JDK并且执行路径为jdk/bin。

2)下载该文档的zip文件并放入jdk目录。文件名为j2sdkversion-doc.zip,这里的version类似5_0。

3)打开一个shell窗口。

4)进入jdk目录。

5)执行该命令。

jar xvf j2sdkversion-doc.zip

其中version是相应的版本号。

安装本篇中的示例

读者可以安装本书中的示例程序。这些程序可以从 下载,它们被打包在corejava.zip文件中。应该把它们解压到一个单独的文件夹中,建议将文件夹命名为CoreJavaBook。解压操作可以使用任何一种zip文件的实用程序,例如WinZip(),或者使用jar实用程序,它是JDK的一部分。如果使用jar,需要执行下列步骤:

1)确保JDK已经安装,并且jdk/bin目录在执行路径中。

2)建立目录CoreJavaBook。

3)将corejava.zip文件下载到这个目录下。

4)打开一个shell窗口。

5)转换到CoreJavaBook目录。

6)执行命令:

jar xvf corejava.zip

导航Java目录

在学习Java的过程中,经常需要查看Java源文件。当然,也会频繁地使用类库文档。表2-1显示了JDK目录树。

清华毕业大佬,手把手教你Java程序设计环境,就看你敢不敢学

就学习Java而言,有两个最有用的子目录docs和src。docs目录包含了HTML格式的Java类库文档,可以使用任何浏览器(如Netscape)查看这些文档。

选择开发环境

如果在此之前使用Microsoft Visual Studio编写过程序,就会习惯于带有内嵌的文本编辑器、用于编译和运行程序的菜单,以及配有集成调试器的开发环境。基本的JDK全然没有这些功能。

利用它从事的每一项任务都要通过在shell窗口中键入命令来完成。在本书中,将介绍如何安装和使用基本的JDK,这是因为我们发现完善的开发环境并不能减轻学习Java的压力,相反这些环境相当复杂,并且会将一些程序设计者很关注且对他们很有意义的重要细节隐藏起来。

集成开发环境对于编写简单的程序来说显得有些笨重。使用它们速度比较慢、需要更高性能的计算机,并且在编写每一个程序的时候,都要建立有些烦人的项目。而对于编写包含许多源文件的大型Java程序来说,它们却能够表现出不凡的优势,其中集成了调试器、版本控制系统等工具。在这本书中,将主要介绍使用 Eclipse 的基本方法,这是一种本身就用Java编写的免费开发环境。当然,如果更加喜欢其他的开发环境,例如,支持当前Java版本的NetBeans或JBuilder,也可以与本书配合使用。

对于简单的程序来讲,使用介于命令行工具与集成开发环境之间的集成JDK编辑器是一种很好的折中方案。在Linux环境下,最好选择Emacs。在Windows环境下,最好选用TextPad,这是一个优秀的共享编辑器,并且与Java集成得很好。另外,JEdit也是一种相当不错的跨平台工具。

使用与JDK集成的文本编辑器可以使开发Java程序变得简易且快捷。我们将用这种方案开发并测试本书中的绝大多数程序。由于可以在编辑器内部编译并执行源代码,所以,实际上这也是一种开发环境,使用它可以完成本书的所有程序。

总而言之,可以选择下列Java开发环境:

• 使用JDK以及自己喜欢的文本编辑器。在shell窗口编译并运行程序。

• 使用集成开发环境,如Eclipse,或其他免费的、可供使用的商业开发环境。

• 使用JDK和一个与JDK集成在一起的文本编辑器。Emacs、TextPad以及JEdit就属于这类编

辑器。当然,还有其他的一些编辑器。在编辑器中编译并运行程序。

使用命令行工具

首先介绍较难的一种方法:通过命令行编译并运行Java程序。

打开一个shell窗口,进入CoreJavaBook/v1ch2/ Welcome 目录(这个目录是安装本书例题源代码所使用的目录,请参看2.1.4节)。

然后,键入下面的命令:

javac Welcome.java

java Welcome

随后,会在shell窗口中看到如图2-1所示的输出。

清华毕业大佬,手把手教你Java程序设计环境,就看你敢不敢学

祝贺你!已经编译并运行了自己的第一个Java程序。

那么,刚才都进行了哪些操作呢?javac程序是一个Java编译器。它将文件Welcome.java编译成Welcome.class,java程序启动Java虚拟机。虚拟机执行编译器放置在类文件中的字节码。

Welcome程序非常简单。其功能只是向控制台输出了一条消息。你看到例2-1的程序代码可能很兴奋。在下一章中,将解释它是如何工作的。

例2-1 Welcome.java

清华毕业大佬,手把手教你Java程序设计环境,就看你敢不敢学

清华毕业大佬,手把手教你Java程序设计环境,就看你敢不敢学

疑难解答提示

在使用可视化开发环境的年代,许多程序员对于在shell窗口中运行程序已经很生疏了。常常会出错,最终导致令人沮丧的结果。

一定要注意以下几点:

• 如果手工输入源程序,一定要注意大小写。尤其是类名应该为Welcome,而不是welcome或WELCOME。

• 编译时需要提供一个文件名(Welcome.java),而运行程序时,只需要指定类名(Welcome),不要带扩展名.java或.class。

• 如果看到诸如“Bad command or file name”或“javac:command not found”这类信息,就要返回去检查一下安装是否出现了问题,特别是执行路径的设置。

• 如果javac报告了一个错误“cannot read:Welcome.java”,就应该检查此目录中是否存在这个文件。

在UNIX环境下,检查Welcome.java是否以正确的大写字母开头。

在Windows环境下,使用shell命令dir,而不要使用图形浏览器工具。有些文本编辑器(特别是 Notepad )在每个文件名后面要添加扩展名.txt。如果使用Notepad来编辑Welcome.java就会存为Welcome.java.txt。对于默认的Windows设置,浏览器与Notepad都隐含.txt的扩展名,这是因为这个扩展名属于“已知的文件类型”。此时,需要重新命名这个文件,使用shell命令ren,或是另存一次,给文件名加一对双引号,如”Welcome.java”。

• 如果运行程序之后,收到错误信息java.lang.NoClassDefFoundError,就应该仔细地检查一下类名,这是某个类名出现了问题。

如果收到错误信息welcome(w为小写),就应该重新发出带有大写W的java Welcome.java命令。记住,Java是区分大小写的。

如果收到错误信息Welcome/java,就是错误地键入了java Welcome.java,应该重新输入命令javaWelcome。

• 如果键入java Welcome,而虚拟机没有找到Welcome类,就应该检查一下是否系统的类路径被他人更改了。对于简单的程序,最好取消设置的类路径。取消类路径设置的方式是,在当前的shell窗口中键入:

set CLASSPATH =

这个命令在使用C shell的Windows和UNIX/Linux环境下使用。在使用Bourne/bash shell的UNIX/Linux环境下需要使用:

export CLASSPATH =在第4章中将介绍永久性地设置类路径以及取消相应设置的方式。

• 如果收到的错误信息是有关新语言结构的问题,就需要确认一下当前使用的编译程序是否支持JDK 5.0。如果使用的不是JDK 5.0或后续版本,就需要修改源代码,请参看附录B。

• 如果程序中的错误太多,所有的错误信息就会飞快地闪过。编译器将会把这些错误信息发送到标准错误流上。如果信息超过一屏,就很难看清楚它们了。

在UNIX系统或Windows NT/2000/XP系统下,捕获错误信息不是什么太难的事情。可以使用shell操作符 2> 将这些错误重新定向到一个文件中:

javac MyProg.java 2> errors.txt

而在Windows 95/98/ME环境下,就不能在shell窗口中完成将错误信息重定向到标准错误流上的操作。此时,可以从下载errout程序并运行errout javac MyProg.java > errors.txt

使用集成开发环境

在这一节中,将介绍如何使用Eclipse编译一个程序。Eclipse是一个可以从网站上免费下载得到的集成开发环境。Eclipse是采用Java编写的,然而由于所使用的是非标准视窗类库,所以不像Java那样具有可移植性。尽管如此,这个开发环境已经拥有可以应用在Linux、Mac OS X、Solaris以及Windows 环境的版本了。

启动Eclipse之后,从菜单选择File→New Project。然后从向导对话框中选择“Java Project”(如图2-2所示)。这些屏幕画面取自于Eclipse 3.0M8。如果所使用的Eclipse版本看起来稍有差异,不要紧张

清华毕业大佬,手把手教你Java程序设计环境,就看你敢不敢学

点击“Next”按钮,键入项目名“Welcome”,并输入包含Welcome.java的完整路径名,如图2-3所示。确保没有选定标有“Create project in workspace”的选项,然后点击“Finish”按钮。

清华毕业大佬,手把手教你Java程序设计环境,就看你敢不敢学

现在已经建立了项目。点击项目窗口左边窗格中的三角,并打开它。然后,点击旁边的“default package”三角,再双击Welcome.java。现在应该看到带有程序代码的窗口了(如图2-4所示)。

清华毕业大佬,手把手教你Java程序设计环境,就看你敢不敢学

用鼠标右键点击最左侧窗格中的项目名(Welcome),然后从弹出的菜单中选择Build Project。

程序就会被编译。如果编译成功,选择Run→Run As→Java Application。可以看到,这个窗口底部出现了一个输出窗口,程序输出显示在输出窗口中(如图2-5所示)。

清华毕业大佬,手把手教你Java程序设计环境,就看你敢不敢学

定位编译错误

可以肯定,这个程序没有出现输入错误或bug。(毕竟,这段代码只有几行。)为了说明问题,假定在代码中不小心出现了录入错误(或许语法错误)。试着将原来的文件修改一下,让它包含一些录入错误,比如,把String的大小写搞错:

public static void main( S tring[] args)

现在,重新编译这个程序,就会收到一条错误信息,其中指出了有一个不能识别的string类型(如图2-6所示)。点击一下错误信息,可以看到光标马上移到了编辑窗口中相应的行上,在这里将错误纠正过来。使用这种方式可以快速地纠正错误。

现在只是对集成开发环境有了一个初步的认识。在第11章中将进一步讨论Eclipse的调试器。

使用文本编辑器编译并运行程序

集成开发环境虽然提供了许多便利,但却存在着一些潜在的缺陷。尤其是,对于那些没有分散在多个源文件中的简单程序来说,集成环境的启动时间长、不停地发出警告铃声都显得有些得不偿失。幸运的是,许多文本编辑器可以启动Java编译器,运行Java程序,并捕获错误信息以及输出结果。本节将看一下Emacs,这是一个典型的文本编辑器。

清华毕业大佬,手把手教你Java程序设计环境,就看你敢不敢学

Emacs是一个值得炫耀的文本编辑器。它是免费的且可以用于UNIX、Linux、Windows和Mac OS X环境。但是,许多Windows程序员感觉Emacs学起来太难。在这里向这部分程序员推荐TextPad,这是一个符合Windows标准习惯的文本编辑器,且可以从 得到。但需要注意,由于它是一个共享软件,所以在试用期后,如果还想使用,就需要缴纳费用。(我们和厂家没有任何关系,除了对其产品感觉满意之外。)

另一款流行的编辑器是JEdit,这是一个用Java编写的很好用的编辑器。可以在上免费得到。无论使用Emacs、TextPad、JEdit,还是其他的编辑器,基本原理都是一样的。当编辑完源代码时,就可以发出命令对代码进行编译。编辑器启动编译器并捕获错误信息。然后修改错误、再重新编译,然后再发出一条命令来运行程序。

图2-7说明的是Emac编辑器编译Java程序的状态。(从菜单中选择JDE→Compile运行编译程序。)

错误信息在窗口的下半部分。把光标移到一个错误信息,再按下ENTER键,光标就会移到相应的源代码行上。

一旦修改完所有的错误,就可以从菜单中选择JDE→Run App运行程序了。输出信息也显示在编辑窗口的内部(如图2-8所示)。

清华毕业大佬,手把手教你Java程序设计环境,就看你敢不敢学

清华毕业大佬,手把手教你Java程序设计环境,就看你敢不敢学

运行图形化应用程序

Welcome程序并不会引起人们的特别兴奋。接下来,给出一个图形化应用程序。这个程序是一个简单的图像文件查看器(viewer),它可以加载并显示一个图像。首先从命令行编译并运行这个程序。

1)打开一个shell窗口。

2)将目录转到CoreJavaBook/v1ch2/ImageViewer。

3)输入:

javac ImageViewer.java

java ImageViewer

运行后将弹出一个标题栏为ImageViewer的新程序窗口(如图2-9所示)。

清华毕业大佬,手把手教你Java程序设计环境,就看你敢不敢学

现在,选择File→Open,然后找到一个GIF文件并打开它。(我们在同一个目录下提供了两个示例文件。)

要想关闭这一程序,只需要点击标题栏中的关闭按钮或者从系统菜单中选择关闭程序。(要在文本编辑器中或集成开发环境中编译并运行程序,按照前面的步骤做就行了。例如,在Emacs中选择JDE→Compile,然后再选择JDE→Run App。)

现在一定会感觉这个程序既有趣又有用。下面快速地浏览一下源代码。这个程序比第一个程序要长得多,但是只要想一想用C或C++编写同样应用程序所需要的代码量,就不会感到它太复杂了。当然,在Visual Basic中,编写这个程序相当简单,只需要简单地拖放几下,再加上两行代码就行了。JDK没有可视化的界面构造器,所以必须通过编写代码来完成这一切工作,如例2-2所示。在本书中,将在第7章~第9章介绍编写图形化应用程序的内容。

例2-2 ImageViewer.java

清华毕业大佬,手把手教你Java程序设计环境,就看你敢不敢学

清华毕业大佬,手把手教你Java程序设计环境,就看你敢不敢学

建立并运行applet

本书给出的前两个程序是Java应用程序。它们与所有本地程序一样,可以独立地运行。然而,正如上一章提到的,有关Java的大量宣传都在炫耀Java能够在Web浏览器中运行applet的能力。

下面介绍一下如何利用命令行建立并运行applet。然后,利用JDK自带的applet查看器加载applet。

最后,在Web浏览器中显示。

首先,打开shell窗口并将目录转到CoreJavaBook/v1ch2/WelcomeApplet,然后,输入下面的命令:

javac WelcomeApplet.java

appletviewer WelcomeApplet.html

图2-10显示了在applet查看器窗口中显示的内容。

第一条命令是大家已经非常熟悉的调用Java编译器的命令。它将WelcomeApplet.java源文件编译成字节码文件WelcomeApplet.class。

然而,不要运行Java程序,而是调用appletviewer程序。这是JDK自带的一个特殊工具,它可以帮助我们快速地测试applet。这里需要向这个程序提供一个HTML文件,而不是Java类文件名。WelcomeApplet.html的内容请参看下面的例2-3。

例2-3 WelcomeApplet.html

清华毕业大佬,手把手教你Java程序设计环境,就看你敢不敢学

如果熟悉HTML,就会注意到一些标准的HTML指令和applet标记,它们用于告诉applet查看器需要加载一个代码存放在WelcomeApplet.class中的applet。applet查看器将忽略applet标记之外的所有HTML标记。

当使用一个已经启用Java 2的浏览器查看HTML文件时,其他的HTML标记才能够显现出来。遗憾的是,浏览器的情况有点复杂。

• Mozilla(以及Netscape 6及以上的版本)在Windows、Linux 和Mac OS X环境下支持Java。要想试验一下applet,只需要下载这些浏览器的最新版本并确保Java被启用。

• Internet Explorer的某些版本根本不支持Java。其他也只支持Microsoft Java Virtual Machine的过时版本。如果在Windows环境下运行Internet Explorer,就需要从 上下载并安装Java插件。

• 如果使用Macintosh 运行 OS X,那么 Safari 和Internet Explorer集成了Macintosh的Java实现。在编写本书时支持JDK 1.4。OS 9支持过时的版本1.1。

假定有一个支持Java 2平台的浏览器,可以在浏览器中试着加载applet。

1)启动浏览器。

2)选择File→Open File(或等效的操作)。

3)进入CoreJavaBook/v1ch2/WelcomeApplet目录。在文件对话框中,将会看到WelcomeApplet.html文件。加载这个文件,浏览器就加载了applet以及周边的文本。显示效果基本上如图2-11所示。

可能会发现这个应用程序是活动的,并且可以与Internet进行交互。点击Cay Horstmann按钮,applet会让浏览器显示Cay的网页。点击Gary Cornell按钮,applet会让浏览器弹出一个邮件窗口,其中包含已经填写好的Gary邮件地址。

需要注意,在查看器中的两个按钮都不起作用。

applet查看器没有能力发送邮件或显示一个网页,因此会忽略这里的操作请求。applet查看器适于用来单独地测试applet,但是,最终需要将applet放置到浏览器中,以便检测与浏览器以及Internet的交互情况。

最后,在例2-4中给出了这个applet的代码。现在,只要浏览一下就可以了。在第10章中,还会再次讲述applet的编写。

在本章中,学习了有关编译和运行Java程序的机制。现在可以转到第3章开始学习Java语言了。

例2-4 WelcomeApplet.java

觉得文章不错的话,可以转发此文关注小编,之后持续更新干货文章

文章来源:智云一二三科技

文章标题:清华毕业大佬,手把手教你Java程序设计环境,就看你敢不敢学

文章地址:https://www.zhihuclub.com/175078.shtml

关于作者: 智云科技

热门文章

网站地图