第2章 Java程序开发运行环境_第1页
第2章 Java程序开发运行环境_第2页
第2章 Java程序开发运行环境_第3页
第2章 Java程序开发运行环境_第4页
第2章 Java程序开发运行环境_第5页
已阅读5页,还剩78页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第第2章章 Java程序开发运行程序开发运行环境环境本章主要内容本章主要内容:Java开发运行环境的安装Java简单编程Java集成开发环境Eclipse和NetBeans的安装与使用集成开发环境中的Java编程实例Java核心API文档Java基本输入输出编程实例Java编程规范2.1 Java开发运行环境安装 Java的开发运行环境有JDK和JRE(Java Runtime Environment)两种,二者均包含有Java虚拟机。JDK是面向Java开发人员提供的开发运行环境,包括类库(Java API)和编译程序等;JRE面向广大的Java程序的使用者。JDK有多种版本,本书选用目前最

2、新版本,并选用标准版V。不同的操作系统平台下,JDK都有相应的版本,同时还有64位版和32位版之分。本书则以32位版为例,介绍下载、安装以及使用。建立Java开发运行环境的过程包括软件下载、软件安装、环境变量设置和编程测试。下载安装JDK软件之前,需要做好文件夹使用计划,使软件、文档与源程序等存放有序,便于有效地管理和使用。本书假设使用的操作系统平台是Windows,这种情况下则在特定逻辑磁盘(例如E盘)的根文件夹下建立文件夹“JavaDev”,并在此文件夹下建立“10 Downloads”文件夹用于存放下载的软件,建立“20 Doc”文件夹用于存放各种文档资料,建立“30 Ja

3、vaSrc”文件夹用于存放编写的程序等等,参见图2-1。 需要注意的是,有些版本的操作系统不支持文件夹名中包含空格,这时如果创建文件夹则需要去除空格。使用数字开始的文件夹名是为了保证文件夹的显示顺序。2.1 Java开发运行环境安装图2-1 Java编程开发文件夹使用计划2.1 Java开发运行环境安装 Java平台有标准版(Java SE)和企业版(Java EE)之分。通常可以选择标准版,但是对于软件开发者来说企业版是必要的,可以应对各种各样的应用需求。实际上,集成开发环境往往提供包含有Java EE的版本。 本章介绍的软件安装有关的内容是在64位版Window7操作系统下进行的,安装的软

4、件均为32位版。同时,所有软件采用缺省路径安装。如果使用不同版本的操作系统,或指定路径安装软件,那么选择或输入路径时,路径名会有所不同。安装软件时,应该根据需要和实际情况进行必要的调整,而不是照抄本节。例如,由于在64位版的Window7下缺省安装32版的软件,安装软件的文件夹为“C:Program Files (x86)Java”(64位版JDK安装目录为“C:Program FilesJava”),每个人实际情况也许会有所不同,但是安装过程基本相同。2.1.1 下载下载JDK 通常从官方网站(Oracle Technology Network)下载JDK,下载的URL是:http:/ Do

5、wnloads”文件夹中,版本是1.7,文件名是“jdk-7u5-windows-i586.exe”。2.1 Java开发运行环境安装2.1.2 安装安装JDK 用鼠标双击“10 Downloads”文件夹中的安装文件“jdk-7u5-windows-i586.exe”则执行安装程序,则显示图2-2界面,单击【下一步】按钮则显示图2-3对话框,再次单击【下一步】按钮则显示图2-4对话框。 在图2-3或图2-4对话框中,可以按缺省路径安装JDK;也可以选择更改JDK安装路径,单击【更改】按则显示图2-5对话框,这时可以在文件夹名称栏中输入指定的安装路径,然后点击【确定】按钮设置安装路径并返回到上

6、一界面。图2-2 JDK安装(一)图2-3 JDK安装(二)2.1 Java开发运行环境安装 在图2-4对话框中,单击【下一步】按钮则开始安装JDK。至此JDK安装已经完成,同时显示图2-6对话框,单击【继续】按钮则继续安装JavaFX。至此即使不安装JavaFX也可以开发和运行Java程序。之后的安装过程不做详细介绍。 JavaFX可以用于开发富客户端的Web应用软件,JavaFX script是一种脚本语言,有关详细内容参照相关资料。如果不做JavaFX有关的应用开发的话,则不需要安装JavaFX。图2-4 JDK安装(三)图2-5 JDK安装(四)2.1 Java开发运行环境安装图2-6

7、 JDK安装(五)2.1 Java开发运行环境安装 安装过程中,JDK安装文件夹是“C:Program Files (x86)Javajdk1.7.0_05”。以下介绍若干最主要的可执行程序的功能,这些程序在bin文件夹中。 1. javac.exe:Java语言编译器,用于编译Java语言源程序(扩展名为.java)为字节码(扩展名为.class)文件。 2. java.exe:Java语言解释器,用于执行Java字节码文件。 3. javadoc.exe:Java语言文档生成器,用于将Java语言源程序中的注释提取成(HTML, HyperText Markup Language)超文本语

8、言格式的文档。 由于以上介绍的是缺省安装,各个对话框中的内容以及选项就不做详细介绍。有必要的话,可以根据实际编程或软件开发的需要,调整有关选项。2.1.3 配置环境变量配置环境变量 JDK安装完成之后,还需要配置相关的环境变量才能保证Java程序的编译和运行能够正常进行。需要设置的环境变量有PATH和CLASSPATH,有了环境变量PATH,操作系统命令才能够找到Java的编译和运行程序;有了环境变量CLASSPATH,Java虚拟机才能够通过该环境变量指定的路径,找到程序中用到的加载类。 设置环境变量时,通常设置环境变量JAVA_HOME为JDK安装的文件夹。这样做的好处在于,即使JDK安装

9、文件夹发生变化,也只需要修改该环境变量,Java软件就可以正常运行。同时,设置其他环境变量时可以使用环境变量JAVA_HOME,使得路径设置变得相对简洁。 由于JDK安装文件夹是“C:Program Files (x86)Javajdk1.7.0_05”,于是设置JAVA_HOME的值为该文件夹,设置PATH的值为“C:Program Files (x86)Javajdk1.7.0_05bin”,设置CLASSPATH的值为“C:Program Files (x86)Javajdk1.7.0_05lib”。虽然不同的Windows操作系统版本的环境变量的设置会有所不同,但是其过程基本相同。 2

10、.1 Java开发运行环境安装2.1 Java开发运行环境安装 首先打开【控制面板】-【系统和安全】-【系统】-【高级系统设置】(系统属性),则显示图2-7对话框。在图2-7对话框中,单击【高级】标签,再单击【环境变量】则显示图2-8对话框。 设置环境变量有两种,一是用户变量;二是系统变量。如果设置系统变量则对所有的用户有效,如果设置用户变量则只对当前用户有效。如果系统需要安装多种版本的JDK则选择设置用户变量比较合适。因为不论是设置用户变量还是系统变量,操作过程都一样,这里以设置用户变量为例加以介绍。图2-7 系统属性 2.1 Java开发运行环境安装 在图2-8对话框中,单击【新建】按钮则

11、显示图2-9对话框,变量名输入“JAVA_HOME”,变量值输入“C:Program Files (x86)Javajdk1.7.0_05”,再单击【确定】按钮,完成该环境变量的设置。环境变量JAVA_HOME设置完成之后, 环境变量PATH和CLASSPATH则可以使用JAVA_HOME来设置。图2-8 环境变量图2-9 新建用户变量JAVA_HOME如图2-10所示,采用同样的方法设置环境变量PATH,变量名输入“PATH”,变量值输入“%JAVA_HOME%bin”,再单击【确定】按钮,完成环境变量PATH的设置。需要注意的是如果PATH变量已经存在则使用编辑功能修改其值,在原有的值之后

12、加上分号(;)和新的变量值“%JAVA_HOME%bin”。2.1 Java开发运行环境安装图2-10 新建用户变量PATH如图2-11所示,采用同样的方法设置环境变量CLASSPATH,变量名输入“CLASSPATH”,变量值输入“.; %JAVA_HOME%lib”,注意不可以缺少“.”,否则Java程序执行时会发生异常。“.”表示本地文件夹,放在前面会优先在本地文件夹中查找有关文件。2.1 Java开发运行环境安装图2-11 新建用户变量CLASSPATH2.1 Java开发运行环境安装 环境变量设置完成之后,可以测试一下JDK安装和环境变量设置是否成功。进入DOS窗口,输入如下两个命令

13、: java -version javac -version 如果出现图2-12内容,说明JDK安装和环境变量设置已经成功。 环境变量是否设置成功,可以用DOS命令“PATH”、“SET”和“SET JAVA_HOME”等命令来验证。图2-12 JDK安装和环境变量设置的测试2.2 编写运行Java程序 现代软件的开发几乎都使用集成开发环境进行编程和调试(debug),但是使用简单的编辑器例如记事本等编辑程序,通过命令行(例如DOS命令窗口)编译和运行Java程序,也是学习编程过程中的一个必要的步骤。集成开发环境在实现复杂的功能时,往往是通过调用命令行程序来实现的。 Java程序有两类,一是J

14、ava应用程序(Java Application),可以独立运行;二是Java小程序(Java Applet),运行于网页中。早期的Web应用软件有用Java小程序来开发的,但是现在这种做法已经十分罕见。 以下通过【例2-1】介绍用编辑器和命令行程序编写执行Java应用程序的过程,通过【例2-2】介绍Java小程序的编程和应用。通过这两个例子可以知道,使用简单的编辑器也可以进行简单的Java程序编程。 以下使用记事本编辑器来编写Java程序。实际上,也可以选用免费开源的属性文本编辑器。属性文本编辑器可以把Java等语言的关键字(或称保留字)以高亮(或特定颜色)显示,不同的语法成分也以不同的颜色

15、显示,增强了程序可读性。2.2 编写运行Java程序 【例2-1】编写一个Java程序,输出一行“Hello Java!”,同时输出一行“这是我的第一个JAVA程序!”。1. 编辑程序如图2-13所示,编辑Java源程序“Ex2_1_HelloJava.java”,源程序放在文件夹“E:JavaDev30 JavaSrc”中。本书为了节省篇幅,程序列表中略去文档注释以及空行。/* * * 程序名:Ex2_1_HelloJava.java * 编程人: 林福平 * 编程日期:2012-7-23 * 修改日期:2012-7-23 * */public class Ex2_1_HelloJava p

16、ublic static void main(String args) System.out.println(Hello, Java!);System.out.println(这是我的第一个JAVA程序!);2.2 编写运行Java程序2. 程序分析 类注释(文档注释)用/* */括起来,给出了程序名、编程人、编程日期和修改日期的信息。需要注意一般注释(非文档注释)用/* */括起来,也可以作为类注释。 类名是Ex2_1_HelloJava,其修饰词是public,声明该类可以被任意的类引用。通常公用类名与容纳该类的文件名是相同的,以便于Java虚拟机找到该文件并执行相应程序。 main()方

17、法:Java应用程序中至少有一个main()方法,并且如程序中那样进行声明,修饰词有public和static,类型是void。Java程序是从指定的main()方法开始执行的。 方法System.out.println()的功能是输出一行字符串,其中System是Java系统内部定义的一个系统类;out是System类的一个域或称为对象成员;println()是out的方法,用于向系统 标准输出设备输出给定的字符串并换行。 3. 编译运行 进入DOS窗口,将工作文件夹改为“E:JavaDev30 JavaSrc”。然后对Java程序“Ex2_1_HelloJava.java”进行编译生成文件

18、“Ex2_1_HelloJava.class”,可以用dir命令查看结果。最后,用Java程序执行所编写的Java应用程序。2.2 编写运行Java程序 执行以下的一系列命令后,得到的结果如图2-14所示,其输出结果与例2-1要求一致。其中DOS的“e:”命令是选择逻辑磁盘e盘;“cd”命令式将工作文件夹改变为其后给定的文件夹名;“dir”命令用于显示当前文件夹下的所有子文件夹和文件。图2-14 Java应用程序的编译和运行e:cd E:JavaDev30 JavaSrcjavac Ex2_1_HelloJava.javadirjava Ex2_1_HelloJava2.2 编写运行Java程

19、序 【例2-2】编写一个Java小程序,输出“第一个Java Applet程序!”。同时将该程序嵌入HTML文件中,通过浏览器解释执行该程序。1. 编辑程序如图2-15所示,用记事本编辑Java源程序“E:JavaDev30 JavaSrc Ex2_2_FstApplet.java”。源程序如下:图2-15 用记事本编辑Java源程序Ex2_2_FstApplet.javaimport java.awt.Graphics;import java.applet.Applet;public class Ex2_2_FstApplet extends Applet public void paint

20、(Graphics g) g.drawString(第一个Java Applet程序!, 10, 10);2.2 编写运行Java程序 编写了Java小程序之后,为了能够让浏览器解释执行Java小程序,需要编写相应的HTML文件。如图2-16所示,编辑HTML文件“E:JavaDev30 JavaSrc Ex2_2_FstApplet.html”。文件内容如下: 图2-16 用记事本编辑HTML文件Ex2_2_FstApplet.html2. 程序分析 先分析Java小程序如下: import语句用于引入包或类。程序中引入公用包的类,包括java.awt包中的Graphics类和java.ap

21、plet包中的Applet类。 主类Ex2_2_FstApplet继承了Applet类(由关键字extends指定)。Applet小程序不能单独运行,可以在具有Java解释器的浏览器中运行。 Graphics是有关图形的基类,相当于一个图形子窗口,可以在其中绘图或显示文字等,并嵌入到操作系统窗口或网页中显示。 Paint()方法是公共的,无返回类型,其参数是一个Graphics类。在该方法中编写绘图或显示文字等的程序。 drawstring()方法用于将字符串对象输出到窗口,坐标是以左上角为原点,坐标单位是像素。程序中是将字符串显示到(10, 10)的位置。 然后分析HTML文件:该文件是一个

22、最为简单HTML文件,通过applet标签将Applet小程序嵌入HTML;浏览器遇到applet标签时执行Java小程序,在浏览器页面上显示执行的结果。2.2 编写运行Java程序2.2 编写运行Java程序3. 编译运行 如图2-17所示,对Java小程序进行编译,则生成文件“Ex2_2_FstApplet.class”,使用的javac命令如下: javac Ex2_2_FstApplet.java 浏览器URL中输入“E:JavaDev30 JavaSrcEx2_2_FstApplet.html”就可以看到该程序的运行结果,如图2-18。 图2-17 Java小程序的编译图2-18 浏

23、览器中Java小程序的运行结果2.3 Java集成开发环境 计算机编程以及软件开发是一个复杂的过程,一般包括程序编辑、编译、调试和运行。程序出现逻辑错误需要修改时,尤其是大型程序往往难以通过阅读程序判断错误所在,一般采用设置断点和单步执行的方法,通过查看程序变量值进行错误定位和修改错误。显然,对于大型的程序,使用简单的文本编辑器难以胜任编辑、编译、调试和运行的整个过程,尤其是调试和运行。 集成开发环境包括代码编辑器、编译器、调试器和图形用户界面工具,集成了代码编写、分析、编译、调试等一体化的功能,可以大幅提高编程以及软件开发的效率。一般来说,集成开发环境不仅能够开发Java语言程序,还能够通过

24、增加插件开发多种语言程序。 本节介绍常用的Eclipse和NetBeans这两种免费开源的集成开发环境。2.3 Java集成开发环境2.3.1 Eclipse Eclipse 是一个免费开源、基于Java的可扩展开发平台,可以通过插件(软件组件)扩展附加功能,能够支持Java、C/C+(CDT)和PHP等语言的开发。Eclipse具有丰富的插件可以进行各种各样的开发,并且能够方便地得到这些插件并加入到Eclipse中。Eclipse支持Java语言程序开发中的项目管理、程序编辑、编译、调试、运行等操作。1. 下载 目前Eclipse的最新版本是4.2,按照用途的不同,有多种版本可以选择,其官方

25、网站下载地址为:/downloads/packages/release/juno/r。 如果进行Java软件有关的开发则应该选择“Eclipse IDE for Java EE Developers”。但是作为一般的Java编程开发,选择下载32位版的“Eclipse IDE for Java Developers”。下载的文件放在指定文件夹中,其文件名是“eclipse-java-juno-win32.zip”。2.3 Java集成开发环境2. 安装运行 Eclipse是免安装软件,上述文件解压缩后放在“E:JavaDev”文件夹下即可运行。解压缩后

26、会生成一个eclipse文件夹,同时还需要在“E:JavaDev”文件夹下建立workspace文件夹用于存放Java程序项目,如图2-19所示。图2-19 eclipse文件夹的内容 双击eclipse文件夹中的可执行文件eclipse.exe则开始运行Eclipse,如图2-20所示显示初始运行画面,这时workspace指定为“E:JavaDevworkspace”,单击【OK】按钮进入Eclipse主界面。图2-20 Eclipse初始运行界面2.3 Java集成开发环境图2-21是Eclipse的主界面,这里不详细介绍界面中的各个部分功能。图2-21 eclipse主界面2.3 Ja

27、va集成开发环境2.3.2 Eclipse的的Java编程实例编程实例 本小节通过实例介绍使用集成开发环境Eclipse开发Java程序的过程以及相关的操作细节。 【例2-3】用Java语言编写一个二维坐标系中的矩形类。该类能够计算矩形的周长、面积和对角线长,同时对于给定的坐标点能够判断该点是否在该矩形内。使用两个坐标点对矩形进行初始化,或者使用两个坐标点的X和Y的值对矩形初始化。构造一个测试类,用于计算矩形的周长、面积和对角线长等。 问题分析和解决方案:(1)使用矩形对角的两个坐标点表示矩形;(2)编写一个坐标点类;(3)矩形类中编写3个方法分别用于计算周长、面积和对角线长;(4)数学计算时

28、使用Java库函数;(5)测试类中编写main()方法,声明一个矩形类的对象并初始化,计算该矩形的周长、面积和对角线长等。 运行Eclipse并按照以下步骤编写和调试运行矩阵类有关的程序。2.3 Java集成开发环境1. 建立项目 在Eclipse的主界面中,选择菜单【File】-【New】-【Java Project】则显示图2-22对话框。在该对话框中,项目名(Project name)中输入“Ex2_3_Rectangle”(按照本书命名约定),JRE选择JavaSE-1.7,然后点击【Finish】按钮。这时,在Eclipse主界面的“Package Explorer”子窗口中可以看到

29、该项目,打开它可以看到其下已经有一个叫“src”的包。图2-22 Eclipse建立项目2.3 Java集成开发环境2. 创建包 编程时所有Java的包都放在“src”之下。创建两个包,一个包用于容纳矩形类以及相关的类,另外一个包用于容纳测试类。 用鼠标右击“src”,在弹出菜单中选择【new】-【Package】显示图2-23对话框,name项中输入包名“com.elephant.rectangle”,然后单击【Finish】按钮则创建了一个包。用同样的方法创建另一个包“com.elephant.test”。 Java项目中的包,通常用来对大型程序中的各个组成部分按逻辑或功能进行分类。例如公

30、用的类库中有数学包Math,所以与数学计算有关的函数都纳入其中。图2-23 Eclipse创建包2.3 Java集成开发环境3. 创建类 鼠标右击包“com.elephant.rectangle”,在弹出菜单中选择【new】-【Class】显示图2-24对话框,“name”项中输入类名“Point”,然后单击【Finish】按钮则创建了一个坐标点的类“Point”,容纳该类的源程序是“Point.java”,生成的只是一个原型程序,需要进一步编写具体的程序。编写的坐标点的类“Point”的程序,参见后面的程序清单。程序中实现了构造函数以及获得X和Y坐标的方法等。图2-24 Eclipse创建类

31、2.3 Java集成开发环境 同样创建矩形类“Rectangle”,容纳该类的源程序是“Rectangle.java”。然后,详细编写该类的程序,参见后面的程序清单。其中实现了两个构造方法、计算周长的方法、计算面积的方法、计算对角线长的方法以及判定给定坐标点是否在矩形内的方法。 用Java语言编写计算有关的程序时,应该尽量使用现有的类库。这样可以提高编程效率,同时也可以减少人为的编程错误从而提高程序的正确性。例如计算绝对值时,使用函数“Math.abs()”,类“Math”中有大量的数学计算函数可以供编程时使用。 此外,在包“com.elephant.test”中编写一个测试类“TestMai

32、n”,该类包含项目的开始执行的“main”函数。其源程序名是“TestMain.java”,参见后面的程序清单。之所以使用两个包,是因为这样做能够将实现矩形类的逻辑和使用矩形类的逻辑分开来,这样使得程序逻辑清晰且易于理解。 2.3 Java集成开发环境源程序Point.java如下:package com.elephant.rectangle;public class Point double x, y;public Point(double x, double y) this.x = x; this.y = y; /* 类初始化时,创建一个原点实例 */public static Point

33、 origin = new Point(0, 0);/* 用+运算符得到坐标点的字符串 */ Overridepublic String toString() return ( + x + , + y + ); /* 获得坐标的X值 */public double getX() return x;/* 获得坐标的Y值 */public double getY() return y;2.3 Java集成开发环境源程序Rectangle.java如下:package com.elephant.rectangle;public class Rectangle Point point1, point2

34、;/* 构造函数之一:用两个坐标点进行矩阵的初始化 */public Rectangle(Point p1, Point p2) this.point1 = new Point(p1.getX(), p1.getY();this.point2 = new Point(p2.getX(), p2.getY();/* 构造函数之二:用两个坐标点的值进行矩阵的初始化 */public Rectangle(double x1, double y1, double x2, double y2) this.point1 = new Point(x1, y1);this.point2 = new Point

35、(x2, y2);2.3 Java集成开发环境/* 计算矩形的周长 */public double getCircumference() return 2 * Math.abs(point1.getX() - point2.getX()+ 2 * Math.abs(point1.getY() - point2.getY();/* 计算矩形的面积 */public double getArea() return Math.abs(point1.getX() - point2.getX()* Math.abs(point1.getY() - point2.getY();/* 计算矩形的对角线长 *

36、/public double getDiagonal() double width = Math.abs(point1.getX() - point2.getX();double height = Math.abs(point1.getY() - point2.getY();return Math.sqrt(width * width + height * height);2.3 Java集成开发环境/* 判定一个坐标点是否在矩形之内 */public Boolean isInner(Point p) if(Math.min(point1.getX(), point2.getX() = p.g

37、etX() & (p.getX() = Math.max(point1.getX(), point2.getX()& (Math.min(point1.getY(), point2.getY() = p.getY()& (p.getY() = Math.max(point1.getY(), point2.getY()return true;elsereturn false;2.3 Java集成开发环境源程序TestMain.java如下:package com.elephant.test;import com.elephant.rectangle.Point;import com.elepha

38、nt.rectangle.Rectangle;public class TestMain public static void main(String args) Point p1 = new Point(-1, -1);Point p2 = new Point(2, 3);System.out.println(p1的坐标: + p1.toString();System.out.println(p2的坐标: + p2.toString();Rectangle r = new Rectangle(p1, p2);System.out.println(矩形的周长: + r.getCircumfer

39、ence();System.out.println(矩形的面积: + r.getArea();System.out.println(矩形的对角线长: + r.getDiagonal();if(r.isInner(Point.origin)System.out.println(原点在矩形中);2.3 Java集成开发环境Point p3 = new Point(-1.5, -1.5);if(r.isInner(p3)System.out.println(p3.toString() + 在矩形中);elseSystem.out.println(p3.toString() + 不在矩形中); 源程序

40、TestMain.java中用到不同包中的类时,需要用import语句引入。还可以通过修改该程序中的各个坐标点值,计算不同矩形的周长、面积和对角线长等。4. 调试运行 Eclipse中运行编写好的程序有多种方法,其一是鼠标右击项目“Ex2_3_Rectangle”,然后选择弹出菜单【Run As】-【Java Application】;其二是先单击项目“Ex2_3_Rectangle”,然后选择菜单【Run】-【Run As】-【Java Application】;其三是调试运行,选择菜单【Run】-【Debug As】-【Java Application】;其四是选择快捷键运行或调试运行程序

41、。运行结果如下:2.3 Java集成开发环境p1的坐标:(-1.0,-1.0)p2的坐标:(2.0,3.0)矩形的周长:14.0矩形的面积:12.0矩形的对角线长:5.0原点在矩形中(-1.5,-1.5)不在矩形中 通常程序一次性编写运行成功的概率是比较低的。程序在调试运行过程中首先要排除编译错误即语法错误,Eclipse会实时指出程序的语法错误。其次是排除程序的逻辑错误,可以使用设置断点、单步运行、监视变量值和调试运行等手段。详细的方法和过程请参考Eclipse的帮助文件或有关资料。 Java程序的执行顺序是从指定的main()方法开始执行,main()方法中通常调用类实例(对象)的方法,方

42、法中继续调用其他的方法等等,直到执行完main()方法最后一个语句或出现异常中途结束程序的执行。2.3 Java集成开发环境 Java应用程序是从main()方法开始执行的,所以至少要有一个main()方法,否则该程序无法被执行(不知道从哪里开始执行)。main()方法是包含在类中,所以有可能所有类中写了若干个main()方法,这时则需要指定从哪个main()方法开始执行,Eclipse具有指定由哪个main()方法开始执行的功能。 使用Eclipse编写Java程序,程序调试正确之后如果想将其生产exe程序的话,用的比较多的做法是安装像fatjar插件,基于项目生成jar文件(可以用java

43、命令程序运行它),然后再使用类似launch4j软件从jar文件打包生成exe可执行程序文件。2.3.3 NetBeans NetBeans是免费开源的集成开发环境和应用平台,使用Java、PHP和C/C+等计算机语言可以开发桌面、移动和Web应用程序等。NetBeans可以运行于Windows、Mac、Linux和Solaris等操作系统平台,同时也支持包括中文简体和英文在内的多国语言。NetBeans有丰富的插件可以扩展其附加功能。2.3 Java集成开发环境1. 下载 目前NetBeans的最新版本是7.2,按照不同的用途有多种版本可以选择,其官方网站下载地址为:http:/netbea

44、/downloads/index.html。进行大型Java应用软件开发则应该选择“Java EE”版,一般的Java编程开发则可以选择“Java SE”版。同时下载时选择语言为“简体中文”、平台为“Windows”。下载的文件放在指定文件夹中,其文件名是“netbeans-7.2-ml-javase-windows.exe”。2. 安装运行 安装NetBeans只需双击安装文件“E:JavaDev netbeans-7.2-ml-javase-windows.exe”,这时显示图2-25对话框,单击【下一步】按钮显示图2-26对话框并选择“我接受许可协议中的条款”,继续单击【下一

45、步】按钮显示图2-27对话框。 在图2-27对话框中,选择“不安装JUnit”,并单击【下一步】按钮显示图2-28对话框。 在图2-28对话框中,选择安装文件夹和JDK。输入或选择适当的安装位置,这里缺省安装文件夹为“C:Program Files (x86)NetBeans 7.2”;输入或选择适当的JDK的安装文件夹,这里自动显示之前的JDK安装文件夹即“C:Program Files (x86)Javajdk1.7.0_05”。并且单击【下一步】按钮显示图2-29对话框。 在图2-29对话框中,单击【安装】按钮则开始安装NetBeans软件,安装完毕后显示图2-30对话框。在图2-309

46、对话框中,单击【完成】按钮则NetBeans软件的安装全部完成。2.3 Java集成开发环境 这时可以选择操作系统【开始菜单】的“NetBeans IDE 7.2”,或者双击桌面的“NetBeans IDE 7.2”快捷图标启动NetBeans。如果显示图2-31的NetBeans主界面则说明安装已经成功。图2-25 NetBeans安装(一)图2-26 NetBeans安装(二)2.3 Java集成开发环境图2-27 NetBeans安装(三)图2-28 NetBeans安装(四)2.3 Java集成开发环境图2-29 NetBeans安装(五)图2-30 NetBeans安装(六)2.3

47、Java集成开发环境图2-31 NetBeans主画面2.3 Java集成开发环境2.3.4 NetBeans的的Java编程实例编程实例 本小节通过实例介绍使用集成开发环境NetBeans开发Java程序的过程以及相关的操作细节。 【例2-4】用Java语言编写一个二维坐标系中的圆类。该类能够计算圆的周长和面积,同时对于给定的坐标点能够判断该点是否在该圆内。使用一个坐标点和半径初始化圆。构造一个测试类,用于计算圆的周长和面积等。 问题分析和解决方案:(1)使用一个坐标点和半径表示圆;(2)编写一个坐标点类;(3)圆类中编写2个方法分别用于计算周长和面积;(4)数学计算时使用Java库函数;(

48、5)测试类中编写main()方法,声明一个圆类的对象并初始化,计算该圆的周长和面积等。 编写Java程序前需要为NetBeans建立工作文件夹,以便统一管理开发项目。在文件夹“E:JavaDev”下,建立子文件夹“netbeansws”用于存放NetBeans的项目。 运行NetBeans并按照以下步骤编写和调试运行矩阵类有关的程序。2.3 Java集成开发环境1. 建立项目 选择菜单【文件】-【新建项目】则显示图2-32对话框。在该对话框中,“类别“选择“Java”,“项目“选择“Java应用程序”,然后单击【下一步】按钮,显示图2-33对话框。图2-32 NetBeans建立项目(一)图2

49、-33 NetBeans建立项目(二)2.3 Java集成开发环境 在图2-33对话框中,“项目名称”输入“Ex2_4_Circle”,“项目位置”选择输入“E:JavaDevnetbeansws”, “创建主类”选择输入“com.elephant.test.TestMain”,是包含包名的类名,然后单击【完成】按钮。这样就建立了一个项目“Ex2_4_Circle”,该项目下有“源包”和“库”。与此同时也创建了一个包“com.elephant.test”,在该包中建立了一个类“TestMain”,容纳该类的源程序是“TestMain.java”。2. 创建包 用鼠标右击该项目下的源包,选择菜单

50、【新建】-【Java包】则显示图2-34对话框。在该对话框中,“包名”输入“com.elephant.circle”,然后单击【完成】按钮则创建了一个包。图2-34 NetBeans创建包2.3 Java集成开发环境3. 创建类 需要在包“com.elephant.circle”中创建“Point”类和“Circle”类。鼠标右击包“com.elephant.circle”,选择弹出菜单【新建】-【Java类】则显示图2-35对话框。在该对话框中,“类名”输入“Point”,然后单击【完成】按钮则创建了“Point”类,容纳该类的源程序是Point.java。该程序的代码与【例2-3】中的同名

51、程序完全相同,拷贝粘贴即可。图2-35 NetBeans创建类2.3 Java集成开发环境 用同样的方法可以创建“Circle”类,纳该类的源程序是Circle.java。编写该源程序如下:package com.elephant.circle;public class Circle Point center; double radius; /* 构造函数:用圆心坐标和半径初始化 */ public Circle(Point p, double r) this.center = new Point(p.getX(), p.getY(); this.radius = r; /* 计算圆的周长 *

52、/ public double getPerimeter() return 2 * Math.PI * radius; /* 计算圆的面积 */ public double getArea() return Math.PI * radius * radius;2.3 Java集成开发环境/* 判定一个坐标点是否在圆之内 */ public Boolean isInner(Point p) double deltaX = Math.abs(center.getX()-p.getX(); double deltaY = Math.abs(center.getY()-p.getY(); double

53、 distance = Math.sqrt(deltaX * deltaX + deltaY * deltaY);if(distance radius) return true; else return false;编写测试类TestMain,源程序是TestMain.java,内容如下:package com.elephant.test;import com.elephant.circle.Circle;import com.elephant.circle.Point;2.3 Java集成开发环境public class TestMain public static void main(St

54、ring args) Point p = new Point(1, 1); double r = 1.5;System.out.println(圆心的坐标: + p.toString(); Circle c = new Circle(p, r);System.out.println(圆的周长: + c.getPerimeter();System.out.println(圆的面积: + c.getArea();if(c.isInner(Point.origin) System.out.println(原点在圆中); Point p2 = new Point(-0.5, -0.5);if(c.is

55、Inner(p2) System.out.println(p2.toString() + 在圆中);elseSystem.out.println(p2.toString() + 不在圆中); 2.3 Java集成开发环境4. 调试运行 集成开发环境Netbeans中运行编写好的程序有多种方法,这里不做详细介绍。可以单击快捷键【运行项目】开始运行程序,以下是程序运行结果: 圆心的坐标:(1.0,1.0) 圆的周长:9.42477796076938 圆的面积:7.0685834705770345 原点在圆中 (-0.5,-0.5)不在圆中 同样,Netbeans具有设置断点、单步运行、监视变量值和

56、调试运行等功能。详细功能与用法参见有关资料或Netbeans的帮助文件。 2.3 Java集成开发环境2.4 Java核心文档与学习资源 学习编写程序过程中,会使用到许多类库。程序员不必编写与类库相同功能程序,使用已有类库中的功能,能够提高编程效率。Java API(Application Programming Interface, API)是运行库的集合,充分了解其内容和功能是十分必要的。本节同时也介绍了若干学习资源网站。2.4.1 Java核心核心API文档文档 JDK1.7版的Java核心API在线阅读的URL为:http:/ 图2-36 Java核心API文档 这里简单介绍该文档的使

57、用,需要查找某个包的内容,先单击选择栏中的“Packages”则在类选择栏中显示所有的类(“All Classes”),由于类是按字母顺序显示的,可以容易地找到想要查找的类。如果点击选择栏中的包名则在另外一个目录窗口中显示该包中包含的接口、类和例外处理类。 点击类名时,主显示窗口则会显示该类有关的详细文档,包括类继承关系、类变量和类方法等。 如果希望阅读中文版的核心API文档,则可以从网络下载有关文档,参见图2-37。2.4 Java核心文档与学习资源图2-37 中文版Java核心API文档2.4 Java核心文档与学习资源2.4.2 Java学习资源学习资源 为了更好地学习和研究Java编程

58、以及Java有关的软件开发,还需要学会从网络查找学习资源。一些网站提供了丰富的Java学习资源,介绍若干有关Java学习的网址如表2-1。表2-1 若干Java学习资源网站网站/网址名称网址Java SE Technical Documentationhttp:/ Worldhttp:/ Java核心文档与学习资源2.5 Java基本输入输出编程实例 一般而言,每个程序都会有输入和输出。一个没有输入的程序通常每次运行总是输出相同的结果,是没有意义的。程序允许输入数据才能实现各种计算,输出不同的结果。计算机系统把不同的输入源和输出源(键盘、鼠标、打印机、文件、网络通信等)抽象为流(stream)

59、,用统一的接口来表示。Java语言也不例外,有两种基本的流,分别是输入流和输出流。有关输入输出流的详细内容,请参见第9章。以下先简要介绍输入流和输出流: 输入流和输出流都是有序的数据序列,可以是二进制的数据,也可以是编码数据。Java语言中主要有字节流(Byte Stream)和字符流(Character Stream)两种。主要用抽象类InputStream和OutputStream来处理字节流,用抽象类Reader和Writer来处理字符流。 根据用途的不同,还有一些扩展的子类可以用来做特定的处理,请参看Java核心API文档。这些类包括FileInputStream、FileOutput

60、Stream、FileReader和FileWriter等。 程序举例如下: 【例2-5】编写一个Java程序,按行读入一个文本文件,取出介于用分隔符之间的连续的字符串作为单词,将每个单词作为一行输出到一个文件中。 问题分析和解决方案:(1)打开一个文本文件,逐行读入文本文件的内容;(2)对每一行,使用分割字符串的函数,从空白符处切割单词;(3)忽略长度为0的单词(空串);(4)将单词按顺序逐个输出;(5)考虑文本文件的编码;(6)输入和输出文件名通过命令行输入。 本例是一个典型的文件处理应用程序,将文件作为字符流输入,程序计算结果作为字符流输出到文本文件中。这是一个命令行处理程序,使用Ecl

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论