语言程序设计资料:JAVA实验手册

上传人:努力****83 文档编号:43455826 上传时间:2021-12-02 格式:DOC 页数:37 大小:681.50KB
返回 下载 相关 举报
语言程序设计资料:JAVA实验手册_第1页
第1页 / 共37页
语言程序设计资料:JAVA实验手册_第2页
第2页 / 共37页
语言程序设计资料:JAVA实验手册_第3页
第3页 / 共37页
点击查看更多>>
资源描述
JAVA实验手册2011年2月 实验一 Java编程环境下载、安装、配置与运行【开发语言及实现平台或实验环境】Windows2000 或XP,JDK1.6与UltraEdit【实验目的】1掌握下载java sdk软件包2掌握设置Java程序运行环境的方法3掌握编写与运行Java程序的方法4了解Java语言的概貌【实验要求】1JDK的下载与安装2设置环境变量3使用UltraEdit编辑源程序4编译Java源程序5运行Java程序6掌握向main()方法中传递参数【实验内容】一 JDK下载与安装1机器要求Java对机器运行要求不高。下面给出的是基于Windows平台的机器要求。硬件要求:CPU P,128M内存,1G硬盘空间即可软件要求:Windows 2000/XP,IE6.02. 下载JDK为了建立基于SDK的java运行环境,需要先下载sun的免费SDK软件包。SDK包含了一整套开发工具,其中包含对编程最有用的是Java编译器、Applet查看器和Java解释器。在浏览器中输入进入sun公司官方网站页面。在页面右边“Popular Downloads”栏中可看到最新版的JDK软件包(JDK1.6),并下载。3.安装SDK 运行下载的“jdk-6u15-windows-i586”软件包,在安装过程中可以设置安装路径及选择组件,默认的组件选择是全部安装,安装成功后,其中bin文件夹中包含编译器(javac.exe)、解释器(java.exe)、Applet查看器(appletviewer.exe)等可执行文件,lib文件夹中包含了所有的类库以便开发Java程序使用,demo文件夹中包含开源代码程序实例。4.JDK中主要文件夹和文件 安装成功后,C:Program FilesJavajdk1.6.0_15中文件和子目录结构如图1.1所示。其中bin文件夹中包含编译器(javac.exe)、解释器(java.exe)、Applet查看器(appletviewer.exe)等可执行文件,lib文件夹中包含了所有的类库以便开发Java程序使用,sample文件夹包含开源代码程序实例,src压缩文件中包含类库开源代码。二设置环境变量JDK中的工具都是命令行工具,需要从命令行即MS-DOS提示符下运行它们。很多人可能会不习惯,但这是Sun特意采取的策略,为的是把精力更多投入到Java语言本身而不是花在开发工具上。以Windows XP为例说明设置过程。右击桌面“我的电脑”图标,选择“属性”菜单在“高级”选项卡中单击“环境变量”按钮,将出现“环境变量”设置界面在“系统变量”中,找到变量名“PATH”,选中后,点击“编辑”按钮,增加路径C:j2SDK1.6.0_15bin”,如图所示; 在“系统变量”框中,单击“新建”按钮,在出现的“新建系统变量”的对话框中,在“变量名”栏中输入“classpath”,设置路径为“.;C:J2SDK1.6.0_15lib”,如图所示。设置完成后,单击“开始”“所有程序”“附件”“命令提示符”打开DOS窗口,在命令行提示符输入“java”或“javac”回车后,如果出现其用法参数提示信息,则安装正确。三、编辑源程序 要编写Java程序,需要有文本编辑器。可使用操作系统提供的记事本作为编辑器,也可选择UltraEdit编辑软件,它可以使用不同颜色显示java的关键字和类名,简单好用。(1) 下载并安装UltraEdit编辑软件或其他编辑软件编写在屏幕上显示文字“HelloWorld!”的文件(和helloworld.java)。打开UltraEdit编辑软件,新建源文件,并编写源代码,如图所示。四编译java源程序 Java源程序编写后,要使用Java编译器(javac.exe)进行编译,将Java源程序编译成可执行的程序代码。Java源程序都是扩展名为.java的文件。编译时,首先读入Java源程序,然后进行语法检查,如果出现问题就终止编译。语法检查通过后,生成可执行程序代码即字节码,字节码文件名和源文件名相同,扩展名为.class。 (1)打开命令提示符窗口,进入java源程序所在路径。(2)键入编译器和要编译的源程序文件名:javac helloworld.java。按回车键开始编译。如源程序无错误,则屏幕上无输出Java源程序存放路径,如图所示。 (2) 键入“dir”命令并回车可在目录中看到生成的同名类文件。五 运行Java程序 使用java编译器(java.exe)可将编译后的字节码文件helloworld.class解释为本地计算机代码。在命令提示符窗口键入解释器和要解释的字节码文件名 java helloworld。按回车键即开始执行程序并输出结果。注意:字节码文件区分大小写。六、编写程序要求给main()方法传递参数,并在屏幕上输出。七、在上面两个源程序的基础上自定义包,编译运行程序。八(选做) 编写小应用程序,嵌入到HTML文件中,利用小程序查看器运行查看。【思考题】环境变量path和classpath的作用。实验二 Java基本语法练习【开发语言及实现平台或实验环境】Windows2000 或XP,JDK1.6与UltraEdit 【实验目的】1 了解Java的数据类型2 掌握各种变量的声明方式3 理解运算符的优先级4 掌握java基本数据类型。运算符与表达式、数组的使用方法5 理解Java程序语法结构,掌握顺序结构、选择结构和循环结构语法的程序设计方法【实验要求】1 编写一个声明java不同数据类型变量的程序2 编写一个使用运算符、表达式、变量的程序3 编写一个使用java数据的程序4 编写表达式语句、复合语句的程序5 编写使用不同选择结构的程序6 编写使用不同循环结构的程序【实验内容】一声明不同数据类型的变量1编写声明不同数据类型变量的程序文件DEMO2_1.java,源代码如下。public class Demo2_1 public static void main(String args) byte b=0x55;short s=0x55ff;int i=1000000;long l=0xffffL;char c=a;float f=0.23F;double d=0.7E-3;boolean B=true;String S=这是字符串类数据类型;System.out.println(字节型变量 b = +b);System.out.println(短整型变量 s = +s);System.out.println( 整型变量 i = +i);System.out.println(长整型变量 l = +l);System.out.println(字符型变量 c = +c);System.out.println(浮点型变量 f = +f);System.out.println(双精度变量 d = +d);System.out.println(布尔型变量 B = +B);System.out.println(字符串类对象 S = +S);2编译并运行该程序。3定义一个浮点数类型的数据,查看其在计算机内部的二进制数据流(以十进制或二进制整型数据显示。提示:利用floatToIntBit方法)4在屏幕上输出正、负无穷大的浮点数。5创建一个CPerson类,包括以下属性:姓名、身份证号、性别和年龄。要求设计该类并添加一个对其成员变量初始化的构造方法。6课后思考题P104-105:1,7,8二使用关系运算符和逻辑运算符1建立使用关系运算符和逻辑运算符的程序文件,源代码如下。class Demo2_2 public static void main(String args) int a=25, b=20, e=3, f=0;boolean d=ab;System.out.println(a=25,b=20,e=3,f=0);System.out.println(因为关系表达式 a5)System.out.println(因为e 非0 且a/e 为8 大于5,所以输出 a/e +a/e);if (f!=0 & a/f5)System.out.println(a/f = +a/f);elseSystem.out.println(因为f值为0,所以输出 f = +f);2编译并运行该程序,结果如图2.2 所示。三使用数组1建立使用数组的程序,本程序建立了一个长度为5 的1 维数组,源代码如下。public class Demo2_3 public static void main(String args) int a=new int5;a0=10;a1=10+a0;a2=30;a3=40;a4= a1+ a2;System.out.println(a+0+ = +a0);System.out.println(a+1+ = +a1);System.out.println(a+2+ = +a2);System.out.println(a+3+ = +a3);System.out.println(a+4+ = +a4);2编译并运行程序。四使用表达式语句与复合语句1 建立包含表达式语句程序,源代码如下。class Demo2_4public static void main(String args) int k, i=3, j=4;k=20*8/4+i+j*i;System.out.println(表达式(20*8/4+i+j*i)+k);2 建立包含复合语句程序,源代码如下。class Demo2_5public static void main(String args) int k, i=3, j=4;k=i+j;System.out.println(在复合块外的输出 k=+k);float f;f=j+4.5F;i+;System.out.println(在复合块内的输出 f=+f);System.out.println(在复合块内的输出 k=+k);System.out.println(在复合块外的输出 i=+i);3 编译并运行上述两个源程序,结果如图2.4、2.5 所示 五使用选择语句1使用if.else 语句(1)程序功能:使用if.else 语句构造多分支,判断某一年是否为闰年。闰年的条件是符合下面二者之一:能被4 整除,但不能被100 整除;能被4 整除,又能被100 整除。(2)编写源程序文件,代码如下。public class Demo2_6 public static void main(String args) boolean leap;int year=2005;if (year%4=0 & year%100!=0) | (year%400=0) / 方法1System.out.println(year+ 年是闰年);elseSystem.out.println(year+ 年不是闰年);year=2008; / 方法2if (year%4!=0)leap=false;else if (year%100!=0)leap=true;else if (year%400!=0)leap=false;elseleap=true;if (leap=true)System.out.println(year+ 年是闰年);elseSystem.out.println(year+ 年不是闰年);year=2050; / 方法3if (year%4=0) if (year%100=0) if (year%400=0)leap=true;elseleap=false;elseleap=false;elseleap=false;if (leap=true)System.out.println(year+ 年是闰年);elseSystem.out.println(year+ 年不是闰年);(3)编译运行程序,其结果如图2.6 所示。2使用switch 语句(1)程序功能:在不同温度时显示不同的解释说明。(2)程序源代码如下。class Demo2_7public static void main(String args) int c=38;switch (c10?1:c25?2:c35?3:4) case 1:System.out.println( +c+ 有点冷。要多穿衣服。);case 2:System.out.println( +c+ 正合适。出去玩吧。);case 3:System.out.println( +c+ 有点热。);default:System.out.println( +c+ 太热了!开空调。);(3)编译运行程序,其结果如图2.8 所示。六使用循环语句1 for 循环语句练习(1) 程序功能:按5 度的增量打印出一个从摄氏温度到华氏温度的转换表。(2) 程序源代码如下。class Demo2_8public static void main (String args) int h,c;System.out.println(摄氏温度 华氏温度);for (c=0; c=40; c+=5) h=c*9/5+32;System.out.println( +c+ +h);(3)编译并运行程序,其结果如图2.8 所示。2 while 循环语句练习(1)程序功能:运行程序后从键盘输入数字1/2/3 后,可显示抽奖得到的奖品;如果输入其它数字或字符显示“没有奖品给你!”。(2)程序源代码如下。import java.io.*;class Demo2_9 public static void main(String args) throws IOException char ch;System.out.println(按 1/2/3 数字键可得大奖!);System.out.println(按空格键后回车可退出循环操作.);while (ch=(char)System.in.read()!= ) System.in.skip(2); / 跳过回车键switch (ch) case 1:System.out.println(恭喜你得大奖,一辆汽车!);break;case 2:System.out.println(不错呀,你得到一台笔记本电脑!);break;case 3:System.out.println(没有白来,你得到一台冰箱!);break;default:System.out.println(真不幸,你没有奖品!下次再来吧。);(3)编译源程序。(4)在命令提示符窗口运行程序,然后分别按1、2、3、r 结果如图2.9 所示。3dowhile 循环语句练习(1) 程序功能:求12+100 之和,并将求和表达式与所求的和显示出来。(2) 程序源代码如下。class Demo2_10 public static void main(String args) int n=1, sum=0;do sum+=n+;while (nb)return a+ +b;elsereturn b+ +a;public String sort(int a, int b, int c) int swap;/*增加相应代码实现3个数的排序*/return a+ +b+ +c;public String sort(int arr) String s= ;int swap;for (int i=0; iarr.length; i+)for (int j=0; jarrj+1) swap=arrj;arrj=arrj+1;arrj+1=swap;for (int i=0; iarr.length; i+)s=s+arri+ ;return s;public class EXP3_11 public static void main(String args)IntSort s=new IntSort();int a=30, b=12, c=40;int arr=34,8,12,67,44,98,52,23,16,16;System.out.println(两个数的排序结果:+s.sort(a,b);System.out.println (三个数的排序结果:+s.sort(a,b,c);System.out.println (数组的排序结果:+s.sort(arr);(3) 编译并运行。7.2、构造函数的重载构造方法的名称和类同名,没有返回类型。尽管构造方法看起来和一般的成员方法没有差别,但它不是方法,也不是类的成员。因此,构造方法不能直接调用,只能由new 操作符调用。构造方法对于类是十分重要的,对象的初始化任务要靠构造方法来完成。重载构造方法的目的是提供多种初始化对象的能力,使程序员可以根据实际需要选用合适的构造方法来初始化对象。(1) 程序源代码如下。class RunDemo private String userName, password;RunDemo() System.out.println(全部为空!);RunDemo(String name) userName=name;RunDemo(String name, String pwd) this(name);password=pwd;check();void check() String s=null;if (userName!=null)s=用户名:+userName;elses=用户名不能为空!;if (password!=12345678)s=s+ 口令无效!;elses=s+ 口令:*;System.out.println(s);public class EXP3_12 public static void main(String args) new RunDemo();new RunDemo(张三);new RunDemo(null,李四);new RunDemo(王五,12345678);(2) 编译并运行。实验四 包、接口与异常处理【开发语言及实现平台或实验环境】Windows2000 或XP,JDK1.6,记事本或Ultra Edit【实验目的】1 了解Java 中包(package)、接口(interface)和异常处理(exception)的作用。2 掌握包、接口、异常处理的设计方法。【实验要求】1. 了解Java 系统包的结构。2. 掌握创建自定义包的方法。3. 掌握使用系统接口的技术和创建自定义接口的方法。4. 理解系统异常处理的机制和创建自定义异常的方法。【实验步骤】一了解并使用Java 的系统包1 API 包、接口、异常处理的作用包是类和接口的集合。利用包可以把常用的类或功能相似的类放在一个包中。Java 语言提供系统包,其中包含了大量的类,可以在编写Java 程序时直接引用它们。为便于管理和使用它们,将这些类分为了不同的包。包又称类库或API 包,所谓API(Application Program Interface)即应用程序接口。API 包方面提供丰富的类与方法供大家使用,如画图形、播放声音等,另一方面又负责和系统软硬件打交道,圆满实现用户程序的功能。所有Java API 包都以“java.”开头,以区别用户创建的包。接口解决了Java 不支持多重继承的问题,可以通过实现多个接口达到与多重继承相同的功能。处理程序运行时的错误和设计程序同样重要,只有能够完善处理运行时出错的程序,软件系统才能长期稳定地运行,异常处理就是说明如何处理程序运行时出错的问题。2上网浏览Java API 文档在地址 上,可以看到Java 系统提供的Java API 文档,类文档的内容主要是:类层次、类及用途描述、成员变量列表、构造方法列表、成员方法列表、从类层次上继承的方法列表、成员变量的详细说明、构造方法详细说明、成员方法详细说明。在这里可以看到Java 提供的Java API 文档的最新内容二创建并使用自定义包1自定义包的声明方式 声明包语句必须添加在源程序的第一行,表示该程序文件声明的全部类都属于这个包。2创建自定义包Mypackage在存放源程序的文件夹中建立一个子文件夹Mypackage。例如,在“E:javademo”文件夹之中创建一个与包同名的子文件夹Mypackage(E:javademoMypackage),并将编译过的class 文件放入该文件夹中。注意:包名与文件夹名大小写要一致。再添加环境变量classpath 的路径,例如:D:javajdk1.6lib; E:javademo3在包中创建类(1)YMD.java 程序功能:在源程序中,首先声明使用的包名Mypackage,然后创建YMD 类,该类具有计算今年的年份,可以输出一个带有年月日的字符串的功能。(2)编写YMD.java 文件,源代码如下。package Mypackage; /声明存放类的包import java.util.*; /引用java.util 包public class LX4_1_YMD private int year,month,day;public static void main(String arg3)public LX4_1_YMD(int y,int m,int d) year = y;month = (m=1) & (m=1) & (d=31) ? d : 1);public LX4_1_YMD() this(0,0,0);61public static int thisyear() return Calendar.getInstance().get(Calendar.YEAR);/返回当年的年份public int year() return year;/返回年份public String toString()return year+-+month+-+day;/返回转化为字符串的年-月-日(3)编译LX4_1_YMD.java 文件,然后将LX4_1_YMD.class 文件存放到Mypackage 文件夹中。3编写使用包Mypackage 中LX4_1_YMD 类的程序(1)LX4_2.java 程序功能:给定某人姓名与出生日期,计算该人年龄,并输出该人姓名,年龄,出生日期。程序使用了LX4_1_YMD 的方法来计算年龄。(2)编写LX4_2.java 程序文件,源代码如下。import Mypackage.LX4_1_YMD; /引用Mypackage 包中的LX
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 大学资料


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!