java程序设计实验.docx
- 文档编号:23749480
- 上传时间:2023-05-20
- 格式:DOCX
- 页数:14
- 大小:19.69KB
java程序设计实验.docx
《java程序设计实验.docx》由会员分享,可在线阅读,更多相关《java程序设计实验.docx(14页珍藏版)》请在冰豆网上搜索。
java程序设计实验
《Java程序设计实验报告》
实验一Java开发环境的安装与配置
一实验目的与要求
1.熟悉安装和配置JDK开发环境
2.熟悉安装和配置IDE开发工具
3.掌握Java程序编辑、编译和运行的过程
4.掌握Java程序的构成特点
5.总结在调试过程中的错误。
二实验环境
应用软件:
Jdk1.5.0,jcreator
操作系统:
window2000以上
三实验思考
1什么是JVM,它的作用是什么?
2简单总结一下一个Java程序的基本结构。
四实验内容
1按照下面的步骤设置环境变量path
(1)找到机器上已安装的jdk的所在路径。
C:
\j2sdk1.4.2_14
(2)找到它的子目录bin,在该目录下应该包含java.exe,javac.exe,appletviewer等应用程序。
记录下bin的完整路径。
C:
\j2sdk1.4.2_14\bin
(3)切换到windows的命令行方式,在默认的目录下,输入命令java,记录结果。
关闭命令行方式。
MicrosoftWindowsXP[版本5.1.2600]
(C)版权所有1985-2001MicrosoftCorp.
C:
\DocumentsandSettings\user>java
Usage:
java[-options]class[args...]
(toexecuteaclass)
orjava[-options]-jarjarfile[args...]
(toexecuteajarfile)
whereoptionsinclude:
-clienttoselectthe"client"VM
-servertoselectthe"server"VM
-hotspotisasynonymforthe"client"VM[deprecated]
ThedefaultVMisclient.
-cp
-classpath
A;separatedlistofdirectories,JARarchives,
andZIParchivestosearchforclassfiles.
-D
setasystemproperty
-verbose[:
class|gc|jni]
enableverboseoutput
-versionprintproductversionandexit
-version:
requirethespecifiedversiontorun
-showversionprintproductversionandcontinue
-jre-restrict-search|-jre-no-restrict-search
include/excludeuserprivateJREsintheversionsearch
-?
-helpprintthishelpmessage
-Xprinthelponnon-standardoptions
-ea[:
-enableassertions[:
enableassertions
-da[:
-disableassertions[:
disableassertions
-esa|-enablesystemassertions
enablesystemassertions
-dsa|-disablesystemassertions
disablesystemassertions
C:
\DocumentsandSettings\user>
(4)右键点击“我的电脑”,打开“属性”->“高级”->“环境变量”,找到Path变量,
点击编辑按钮,在弹出的编辑对话框里,将步骤2的路径添加到尾部。
(5)重新打开命令行方式,输入java–version,如果正确显示java的版本号,则
说明环境设置成果。
MicrosoftWindowsXP[版本5.1.2600]
(C)版权所有1985-2001MicrosoftCorp.
C:
\DocumentsandSettings\user>java-version
javaversion"1.4.2_14"
Java(TM)2RuntimeEnvironment,StandardEdition(build1.4.2_14-b05)
JavaHotSpot(TM)ClientVM(build1.4.2_14-b05,mixedmode)
C:
\DocumentsandSettings\user>
(6)将以上过程以及你设置的path变量值填写到实验报告中,并解释一下为什么一定要设置该环境变量。
2打开windows自带的记事本,输入下面的代码:
publicclassHelloWorld{
publicstaticvoidmain(String[]args){
System.out.println(“hello,world!
”);
System.out.print(“hello,”);
System.out.print(“world!
”);
}
}
(1)将文件保存为HelloWorld.java,记录下文件所在的位置。
(2)切换到命令行方式,通过“cd”命令转至刚保存的文件所在路径下。
(3)输入javacHelloWorld.java进行编译。
(4)如果有错误发生,核对是否有错拼和漏拼。
如果没有错误,查看同一文件夹下是否
多出了一个名为“HelloWorld.class”的文件。
(5)继续在命令行下输入javaHelloWorld,观察输出的结果。
(6)将以上过程和结果填写到实验报告中。
Hello,world!
Hello,world!
3打开Jcreator程序。
(1)打开“config”(配置)菜单中的options(选项)选项,在选修窗口里找到“jdkprofiles”(JDK配置文件)选项,查看其中的的jdk路径是否是机器中安装的jdk路径,如果不是,需要修改为该路径。
(2)打开“file”菜单下的new->file,点击“filetype”,设置为javafile,点击filepath,设置路径,并填写文件名HelloWorld。
(3)输入上面的HelloWorld的代码。
(4)点击bulid菜单下的compile(编译文件)命令,观察输出。
(5)在编译无错的前提下,点击bulid菜单的“execute”(执行项目)命令,观察输出结果。
4以下对HelloWorld程序的源码做一些小的调整,需要记录下各种错误信息。
实验环境可以在记事本中进行,也可以在Jcreator中进行。
(1)将文件另存为Hello.java,进行编译,记录出错信息。
在保留Hello.java作为文件名的前提下,如何改正该错误?
将“publicclassHelloWorld”中的HelloWorld改为Hello
2)在源程序里,将class关键字去除,编译并记录出错信息。
HelloWorld.java:
1:
'class'or'interface'expected
publicHelloWorld{
^
1error
Processcompleted.
(3)将main方法全部注释掉,编译并执行,记录出错信息。
没错
(4)将System的首字母改为小写的s,编译并记录出错信息。
HelloWorld.java:
3:
packagesystemdoesnotexist
system.out.println("hello,world!
");
^
HelloWorld.java:
4:
packagesystemdoesnotexist
system.out.print("hello,");
^
HelloWorld.java:
5:
packagesystemdoesnotexist
system.out.print("world!
");
^
3errors
Processcompleted.
(5)将class关键字前的public去除,编译执行,记录出错信息。
没错
实验二Java基础编程
一实验目的与要求
1.掌握类的方法定义,掌握在main方法中创建类的实例,以及如何使用实例
2.学会编写简单的类。
二实验环境
应用软件:
Jdk1.5.0,jcreator
操作系统:
window2000以上
三实验思考
1一个空对象(没有方法、没有成员)有没有大小?
有大小。
2对“引用”这种类型做一下简单的描述或者定义。
四实验内容
1定义一个类FactorApp,
(1)添加一个方法intfactor(intn),在该方法中实现计算n的阶乘。
(2)程序应该阻止n<0。
(3)添加main方法,在main方法中,生成FactorApp的实例,调用实例的方法factor。
计算并输出结果。
importjava.util.*;
publicclassFactorApp{
intfactor(intn){
intresult;
if(n==0)
return1;
else{
result=n*factor(n-1);
returnresult;
}
}
publicstaticvoidmain(Stringargs[]){
FactorAppf=newFactorApp();
Scannerinput=newScanner(System.in);
System.out.println("inputanum:
");
intn=input.nextInt();
if(n<0)
System.out.println("error");
else
System.out.println(n+"!
="+f.factor(n));
}
}
2编写一个方法,实现将数组后移一位。
比如原数组为:
Array:
1221
→01221
publicclassArray{
voidcreat(inta[],intn){
for(inti=0;i Scannerinput=newScanner(System.in); a[i]=input.nextInt(); } } voidfactor(inta[],intn) { intArray[]=newint[n+1]; for(inti=n;i>0;i--) { Array[i]=a[i-1]; } a=newint[n+1]; for(inti=0;i { a[i]=Array[i]; System.out.print(a[i]+""); } System.out.println(); } publicstaticvoidmain(String[]args){ Arrayp=newArray(); intn; System.out.print("inputthesizeofArray: "); Scannerinput=newScanner(System.in); n=input.nextInt(); inta[]=newint[n]; System.out.println("inputtheArray: "); p.creat(a,n); p.factor(a,n); } } 3编写类Point以及测试类Pointtest,在Point类中: (1)添加私有整型变量x,y,代表point的坐标。 (2)为每个变量增加get-成员方法。 (3)在PointTest类中实例化Point对象,并输出x,y的值,记录并分析该值。 (4)修改Point类。 添加构造器Point(intx,inty)。 (5)在PointTest类中采用缺省构造器构造Point对象,编译,记录出错信息。 Point.java: 16: cannotfindsymbol symbol: constructorPoint() location: classPoint Pointp=newPoint(); ^ (6)按照带参构造器来构造Point对象。 试着传递以不同类型的值(8种基本类型),看看类型转换中可能出现的问题。 (7)重载构造器为Point(Pointp),即允许用另一个Point对象来初始化。 (8)添加成员方法print,打印格式形如: Point(2,3) (9)添加成员方法move(x,y),可以将坐标调整至(x,y)。 (10)添加静态方法distance(Pointp1,Pointp2),计算并输出两点的距离。 实验三Java的面向对象的编程 一实验目的与要求 1学习标准输入的方法 2学习Java中的面向对象编程的思想。 3练习复杂点的程序设计 二实验环境 应用软件: Jdk1.5.0,jcreator 操作系统: window2000以上 三实验思考 1学会Jdk帮助文档的使用。 2继承有哪些好处? 3简单总结目前为止你见到的Java与C++的差别。 四实验内容 1扩展上一个实验的Point类为Circle类,要求: (1)增加成员radius(半径). (2)设计它的构造器 (3)move方法要求每次移动后,半径增加1。 (4)在测试类中实例化该对象,并打印相关信息。 (5)在测试类中计算两个圆的距离(即两个圆心的距离)。 importjava.lang.Math; publicclassPoint{ privateintx,y; publicPoint(intx,inty){ this.x=x; this.y=y; } publicPoint(Pointp){ x=p.x; y=p.y; } intget_x(){ returnx; } intget_y(){ returny; } voidprint(){ System.out.println("点坐标为: "); System.out.println("P("+get_x()+","+get_y()+")"); } staticvoiddistance(Pointp1,Pointp2){ doubleresult=Math.sqrt((p1.get_x()-p2.get_x())*(p1.get_x()-p2.get_x())+(p1.get_y()-p2.get_y())*(p1.get_y()-p2.get_y())); System.out.println(result); } voidmove(intx,inty){ this.x=x; this.y=y; } } classCircleextendsPoint{ privateintradius; publicCircle(intx,inty,intradius){ super(x,y); this.radius=radius; } voidmove(intx,inty){ super.move(x,y); this.radius=radius+1; } staticvoiddistance(Circlec1,Circlec2){ doubleresult=Math.sqrt((c1.get_x()-c2.get_x())*(c1.get_x()-c2.get_x())+(c1.get_y()-c2.get_y())*(c1.get_y()-c2.get_y())); System.out.println(result); } } classPointTest{ publicstaticvoidmain(String[]args){ Pointp1=newPoint(2,3),p2=newPoint(p1); Circlec1=newCircle(1,2,3); c1.move(3,4); System.out.println("x="+c1.get_x()); System.out.println("y="+c1.get_y()); p1.move(3,4); p1.distance(p1,p2); p1.print(); System.out.println("x="+p2.get_x()); System.out.println("y="+p2.get_y()); } } 2利用以下代码,练习输入其他基本类型的数。 importjava.io.*; publicclassIOTester{ publicstaticvoidmain(String[]args)throwsIOException{ BufferedReaderreader=newBufferedReader(newInputStreamReader(System.in)); inti=Integer.parseInt(reader.readLine()); Boolean.parseBoolean System.out.println(i); } } (1)读取小数型的值。 (2)读取bool型的值 (3)读取字符串 C O M 3编写一个猜单词位置的程序。 单词由三个字母组成,单词放在一个由7个格组成的容器内。 单词的起始位置随即产生。 要求用户输入字母的位置(从0-7),如果正确输出hitted,错误输出missed。 全部正确,输出finished,并退出。 (本题需附上源代码,没有完成可以附上部分源代码)。 //Math.random()
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- java 程序设计 实验