第1章Eclipse基础应用实例Eclipse是一个开放源代码的软件开发项目,专注于为高度集成的企业开发提供一个全功能的具有商业品质的工业平台。它最初由IBM公司贡献,IBM公司提供了Eclipse代码基础。目前,由IBM牵头,Eclipse项目已经发展成为一个庞大的联盟,有150多家软件公司参与到Eclipse项目中。其中包括Borland、RationalSoftware、RedHat及Sybase。就其本身而言,Eclipse只是一个框架和一组服务,用于通过插件组件构建开发环境。Eclipse拥有一个标准的插件集,核心插件是Platform、JDT和PDE。Platform是Eclipse的核心运行平台,截至本书写作时的最新版为3.1.1;JDT是Java开发工具;PDE是插件设计环境,用于设计自定义插件。正是这种基于插件的设计和开发方式,Eclipse受到了越来越多的开发者的欢迎。1.1下载并安装EclipseEclipse是开放源代码的项目,可以免费下载。它的官方网站的网址是http://。官方网站提供Releases、StableBuilds、IntegrationBuilds和NightlyBuilds的下载。建议使用Releases或StableBuilds版本。Releases版本是Eclipses开发团队发布的主要发行版本,是经过测试的稳定版本,适合要求稳定而不需要最新改进功能的使用者选择。目前最新的Releases版本是Eclipse3.2。StableBuilds版本是对大多数使用者足够稳定的版本,由开发团队将认为比较稳定的IntegrationBuilds版本提升到StableBuilds而来,适合想使用Eclipse新功能的使用者选择。跟我做1.安装JDK1.5Eclipse是一个基于Java平台的开发环境,它本身也要运行在Java虚拟机上,还要使用JDK的编译器,因此必须首先安装JDK。(1)登录SUN的官方站点,下载JDK1.5Windows版。(2)安装JDK1.5,可自行设定安装目录,如E:\jdk15。(3)设置系统变量CLASSPATH。右击【我的电脑】,依次选择【属性】|【高级】|【环境变量】命令,弹出【环境变量】对话框,如图1-1所示。第1章Eclipse基础应用实例3·3·图1-1【环境变量】对话框(4)在【系统变量】中,单击【新建】按钮,弹出【新建系统变量】对话框,如图1-2所示。图1-2新建系统变量(5)新建系统变量。在【变量名】文本框中输入“JAVA_HOME”,在【变量值】文本框中输入JDK安装路径,如“E:\jdk15”,单击【确定】按钮。然后创建“CLASSPATH”系统变量,变量值为“.;E:\jre15\lib\rt.jar”。(6)编辑“Path”系统变量。在【环境变量】对话框中选中“Path”系统变量,单击【编辑】按钮,弹出【编辑系统变量】对话框,在【变量值】文本框的最后加入“%JAVA_HOME%\bin”。2.安装Eclipse3.1.1(1)登录Eclipse的官方站点,下载Eclipse安装包eclipse-SDK-3.1.1-win32.zip。(2)将ZIP文件解压至自行设定的安装目录,如E:\eclipse,Eclipse即安装完毕。注意:本书中Eclipse安装目录均用%Eclipse%代替。EclipseWeb开发从入门到精通·4·1.2安装语言包Eclipse提供了一个语言包的插件,用于国际化其开发环境。对于英文不好的读者或者初学者来说,中文版本的Eclipse可以显著提高学习效率,便于接受和使用Eclipse。在对Eclipse有了初步的认识之后,还是建议读者多使用英文版Eclipse,这样对以后的进一步学习和使用有好处。跟我做(1)下载语言包插件。登录Eclipse语言包下载网站,网址是。选择SDKLanguagePacks中的NLpack1,下载NLpack1-eclipse-SDK-3.1.1a-win32.zip。(2)将ZIP文件解压至Eclipse安装路径,即可完成语言包的安装。注意:如果Eclipse环境不能完全汉化,可将%Eclipse%\configuration\org.eclipse.update文件夹删除,重新启动Eclipse即可。如果想恢复英文环境,可增加-NLen_US启动参数。1.3第一个Java实例这是一个简单的Java程序,从命令行输入两个字符串参数,在程序中将其合并成一个字符串,并在控制台输出。本实例的目的是为了熟悉Eclipse环境,掌握编写Java程序的流程,掌握设置命令行参数的方法,以及如何在Eclipse中运行Java程序。1.3.1新建Java项目(1)启动Eclipse。右击%Eclipse%\eclipse.exe,依次选择【发送到】|【桌面快捷方式】命令。(2)双击桌面上的Eclipse快捷方式,启动Eclipse。如Eclipse启动不成功,可增加虚拟机参数-vm%JAVA_HOME%\jre\bin\javaw.exe。(3)单击【窗口】菜单,依次选择【打开透视图】|【Java】命令,打开Java透视图。(4)单击【文件】菜单,依次选择【新建】|【项目】命令,弹出【新建项目】对话框。(5)选择【Java项目】,单击【下一步】按钮。(6)在【项目名】文本框中输入“JavaApplication”,其他选项保持默认值,单击【完成】按钮。1.3.2配置构建路径为了让Java源文件和编译后生成的字节码文件分开存放,需要配置构建路径。(1)选择【窗口】|【首选项】命令,弹出【首选项】对话框。第1章Eclipse基础应用实例5·5·(2)依次选择左侧列表的【Java】|【构建路径】,选中窗口中的文件夹选项,单击【确定】按钮,保存设置,如图1-3所示。EclipseWeb开发从入门到精通·6·图1-3配置构建路径1.3.3新建Java类(1)右击“src”文件夹,依次选择【新建】|【包】命令,弹出【新建Java包】对话框。在【名称】文本框中输入“net.chapter1”,单击【完成】按钮。(2)右击“net.chapter1”包,依次选择【新建】|【类】命令,弹出【新建Java类】对话框。在【名称】文本框中输入“StringJoin”,单击【完成】按钮。(3)编写程序代码。如下:packagenet.chapter1;publicclassStringJoin{publicstaticvoidmain(String[]args){//对输入的命令行参数进行判断,如果为空指针或者参数的数量不是2个,则输出提示信息后返回if(args==null||args.length!=2){System.out.println(请输入两个字符串参数!);return;}//在控制台打印输入的参数System.out.println(您输入的字符串分别是:'+args[0]+'和'+args[1]+');//将两个字符串进行连接StringjoinedString=args[0]+args[1];//在控制台打印连接后的字符串System.out.println(连接后的字符串是:+joinedString);}}1.3.4设置命令行参数(1)右击“StringJoin.java”文件,依次选择【运行方式】|【运行…】命令,弹出【运行】对话框。第1章Eclipse基础应用实例7·7·(2)在左侧【配置】列表中选择【Java应用程序】,单击【新建】按钮,生成“StringJoin”项。(3)选择右侧的【自变量】选项卡,在【程序自变量】文本框中输入命令行参数“hello”和“java”,如图1-4所示。图1-4设置命令行参数1.3.5运行实例在图1-4中,单击【运行】按钮运行Java程序。输出结果如图1-5所示。图1-5第一个Java程序运行结果1.4Java应用程序实例本节将通过3个更详细的Java应用实例,进一步加深对Eclipse编程方式的理解。选择的题材包括排序算法、数字游戏、使用Java实现FTP功能。1.4.1排序算法的Java实现排序问题应该是数据结构中的经典问题。前人总结出了多种排序算法,不同的算法都可以通过不同的语言描述实现。本实例将实现冒泡排序、插入排序、选择排序的Java版。EclipseWeb开发从入门到精通·8·实例运行后,控制台输出如图1-6所示。第1章Eclipse基础应用实例9·9·图1-63种排序的输出3种排序结果一致,用时极短,均为0。跟我做(1)右击1.3节创建的“net.chapter1”包,依次选择【新建】|【类】命令,弹出【新建Java类】对话框。在【名称】文本框中输入“SortAlgorithm”,单击【完成】按钮。(2)编写程序代码。冒泡排序基本算法思想:从前到后扫描序列,比较相邻两个项目的大小,若发现逆序进行交换,最后使最大者换到序列的最后。然后再从后到前扫描剩下的序列,比较相邻两个项目的大小,若发现逆序则进行交换,最后使最小者换到序列的最前面。对剩下的序列重复上述过程,直到剩下的序列为空时止。bubbleSort方法实现了冒泡排序。如下:publicclassSortAlgorithm{privatevoidbubbleSort(int[]numlist){intout,in;//从后到前,从倒数第二项到第二项扫描数列for(out=numlist.length-1;out1;out--)//从第一项到第out项扫描数列for(in=0;inout;in++)//当前项大于后项,则交换两项的位置if(numlist[in]numlist[in+1]){inttemp=numlist[in];numlist[in]=numlist[in+1];numlist[in+1]=temp;}}插入排序基本算法思想:每次将一个待排序的数据元素插入到前面已经排好序的数列中的适当位置,使数列依然有序,直到待排序数据元素全部插入完为止。insertSort方法实现了插入排序。如下:privatevoidinsertSort(int[]numlist){intin,out;//从out处分开数列for(out=1;outnumlist.length;out++){EclipseWeb开发从入门到精通·10·inttemp=numlist[out];//numlist[out]为待排序的数据in=out;while(in0&&numlist[in-1]=temp)//当发现数列值大于待排序的数据时{numlist[in]=numlist[in-1];//数列向右移一位--in;//指针向左移一位}numlist[in]=temp;//插入待排序的数据}}选择排序基本算法思想:首先找出最小的元素,然后把这个元素与第一个元素互换,这样值最小的元素就放到了第一个位置。接着,再从剩下的元素中找值最小的,把它和第二个元素互换,使得第二小的元素放在第二个位置上,依此类推,直到所有的值由小到大排列为止。selectionSort方法实现了选择排序。如下:privatevoidselectionSort(int[]numlist){intout,in,min;//从第一项到倒数第二项扫描数列for(out=0;outnumlist.length-1;out++){min=out;//将out项设为最小值//从第二项到最后项扫描数列for(in=out+1;innumlist.length;in++)//当发现第in项小于最小值if(numlist[in]n