java实验指导书学生用.docx

上传人:b****4 文档编号:3516928 上传时间:2022-11-23 格式:DOCX 页数:30 大小:26.01KB
下载 相关 举报
java实验指导书学生用.docx_第1页
第1页 / 共30页
java实验指导书学生用.docx_第2页
第2页 / 共30页
java实验指导书学生用.docx_第3页
第3页 / 共30页
java实验指导书学生用.docx_第4页
第4页 / 共30页
java实验指导书学生用.docx_第5页
第5页 / 共30页
点击查看更多>>
下载资源
资源描述

java实验指导书学生用.docx

《java实验指导书学生用.docx》由会员分享,可在线阅读,更多相关《java实验指导书学生用.docx(30页珍藏版)》请在冰豆网上搜索。

java实验指导书学生用.docx

java实验指导书学生用

实验一、安装JDK并熟悉java的运行环境

实验二、基本语法练习

实验三、面向对象编程实验(4)

实验四、异常处理实验

实验五、小应用程序实验

实验六、图形图像实验

实验七、GUI(图形用户接口)实验(4)

实验八、多线程实验

实验九、输入输出流实验(4)

实验十、数据库应用实验(4)

 

实验一、安装JDK并熟悉java的运行环境

一、实验目的

熟悉JAVA的运行环境及学习简单的编程。

二、预习内容

安装工具软件的基本方法。

三、实验设备与环境

装有JAVA语言工具软件(JCreator)的微机若干

四、实验内容

安装JCreator及JAVA的核心编译程序J2SDK。

1、打开JCreator的安装盘安装JCreator。

2、在相同目录下安装J2SDK。

3、打开JCreator软件对J2SDK文件进行配置。

4、编写一应用程序,在屏幕上显示“HELLOWORLD”。

PulicclassHello

{

publicstaticvoidmain(Stringargs[])

{

System.out.println(“HELLOWORLD”);

}

}

5、编写一小程序实现上述功能:

在屏幕上显示“HELLOWORLD”。

实验结果

 

五、注意事项

⒈认真填写实验报告

⒉遵守实验室各项制度,服从实验指导教师的安排

⒊按规定的时间完成实验

六、说明

本次实验建议学时数2学时

七、实验总结与体会

实验二、基本语法练习

一、实验目的

⒈熟悉Java的基本语法

⒉编写应用程序接收命令行参数

⒊编写应用程序接收用户从键盘的输入

⒋掌握字符串与数组的基本方法

二、预习内容

java编程的基本结构

三、实验设备与环境

装有JAVA语言工具软件(JCreator)的微机若干

四、实验内容

⒈编写一个应用程序求若干个数的平均数,原始数字要求从命令行输入。

应用程序中main方法的参数String类型的数组args能接受用户从命令行键入的参数。

(1)编辑Average.java,设保存在D:

\myjava目录下。

classAverage

{

publicstaticvoidmain(Stringargs[])

{

doublen,sun=0;

for(intl=0;l

{

sum=sum+Double.valueOf(arg[l].doubleValue();)

}

n=sum/args.length;

System.out.println(“average=”+n);

}

}

(2)编译。

键入如下命令:

D:

\myjava>javaAverage.java

(3)执行。

键入如下命令。

注意,命令行参数之间用空格分隔。

D:

\myjava>javaAverage.java“12.34”“34.45”“21212121”

注意:

1)参数的个数可以利用args.length来取得。

2)参数“12.34”“34.45”“21212121”分别赋给了main方法的参数arges[0]、arges[1]和arges[2]。

3)由于arges[0]、arges[1]和arges[2]是String类型的,所以要利用Double.valueOf(Strings)方法将String类型转化成Double类型,再用doubleValue()方法求出double类型的值。

⒉编写一个应用程序,接受用户从键盘输入的摄氏温度,然后将其转化成等效的华氏度温度。

方法一:

利用System.in.read()方法可以接受从键盘输入的unicode码,编写一个循环取键值,循环出口为当输入回车时,即判断键值是否为13,若是,则退出循环。

(1)编辑Accept.java,设保存在D:

\myjava目录下。

importjava.io.*;

importjava.io.*;

classAccpet

{

publicstaticvoidmain(String[]args)

{

intc=0;

Strings=“”;

System.out.println(“输入摄氏度:

(0<数值<100)”);

//System.in.read()语句需要加try/cacth()捕获异常

tyr

{

while(c!

=13)//当输入的不是回车

{

c=Sytem.in.read();

s=s+(char)c;//将int型转化成char型,再连接成字符串

}

}

catch(Exceptione){}

intcelsius=Intgeer.parseInt(s.trim());

doublefahre=1.8*celsius+32;

System.out.println(“转化成华氏度为:

”+fahre);

}

}

注意:

1)in是System类的一个属性,System.in的返回类型是InputStream类型。

输入字节流的父类,InputStream类中的read()方法可以读取一个用户从键盘上输入的键值。

System.im.read()的返回值是整型,因此需要先转化成字符型后再连接成字符串。

2)System.im.read()需要用try/catch机制来捕获异常。

3)将字符串转化成响应的整型数值后再利用公式计算出华氏温度。

方法二:

由于InputStream类中的read()方法只能读取一个键值,所以需要利用循环才能读出用户从键盘输入的一串字符,有没有读取一行字符的命令呢?

我们可以利用Java中类的嵌套来实现。

由于BuffereReaser类有读取一行字符串的方法,所以可以这样去定义对象:

BuffereReaserbr=newBuffereReaser(newInputStreamReader(System.in));

(1)编辑Accpe1.java,设保存在D:

\myjava目录下。

ClassAccpt1

{

publibstaticvoidmain(Stringargs[])

{

Strings=“”;

System.out.println(“输入摄氏度:

(0<数值<100)”);

BuffereReaserbr=newBuffereReaser(newInputStreamReader(System.in));

try

{

s=br.readLine();

}cath(Exceptione){}

intcel=Integer.parseInt(s.trim());

doublef=cel*1.8+32;

System.out.println(s+“摄氏度转化成华氏度为:

”+f);

}

}

⒊编写应用程序,按升序顺序输出一维数组中的元素。

排序的方法有很多,常用的有选择发和冒泡法,在此使用选择法。

(1)编辑Sort.java,设保存在D:

\myjava目录下。

classSort

{

publicstaticvoidmain(Stringargs[])

{

}

}

五、注意事项

⒈认真填写实验报告

⒉遵守实验室各项制度,服从实验指导教师的安排

⒊按规定的时间完成实验

六、说明

⒈建议学时数2学时

实验三、面向对象编程实验

一、实验目的

⒈掌握接口的编写及使用

⒉理解继承、多态

⒊掌握包的编写以及如何使用包中的类

二、预习内容

java的基本语法知识

三、实验设备与环境

装有JAVA语言工具软件(JCreator)的微机若干

四、实验内容

⒈接口的编写

(1)编辑Interfaceclass.java,设保存在D:

\myjava目录下。

interfaceInterfaceclass

{

inti=4;

intk=5;

voidfunc1();

intfunc2(intx);

}

(2)编辑UseInterface.java,设保存在D:

\myjava目录下。

classUseInterfaceimplementsInterfaceclass

{

intj;

publicvoidfunc1()//在使用接口的类中一定要实现接口中的所有抽象方法

{

System.out.println(“func1=”+1);

}

publicintfunc2(inti)

{

System.out.println(“func2=”+1);

ieturni;

}

publicstaticvoidmain(Stringsrgs[])

{

//Interfaceclass.classx=newInterfaceclass.class();不能对接口进行实例化

UseInterfacex=newUseInterface();

x.func1();

x.func2(k);

}

}

⒉多态在工资系统中的应用

设计一个根据雇员类型利用abstract方法和多态性完成工资单计算的程序。

Employee是抽象类,Employee的子类有Boss(每星期发给他固定工资,而不计工作时间)、CommissionWorker(除基本工资外还根据销售额发放浮动工资)、PieceWorker(按其生产的产品数发放工资)、HourlyWorker(根据工作时间长短发放工资)。

该例的Employee的每个子类都声明为final,因为不需要再继承它们生成子类。

对所有雇员类型都使用earnings()方法,但每个人挣的工资按他所属的雇员类计算,所有雇员类都是从超类Earnings()派出生的。

所有在超类中声明earnings()为抽象方法,并且对于每个子类都提供恰当的earnings()的实现方法。

为了计算雇员的工资,程序仅仅使用雇员对象的一个超类引导并调用earnings()方法。

在一个实际的工资系统中,各种Employee对象的引用可以通过一个Employee引用数组来实现。

程序依次使用数组的每个元素(Employee引用)调用每个对象的employee()方法。

⒊包的建立与使用

(1)编辑Calculate.java,设保存在D:

\myjava目录下。

packagemypackage;

publicclassCalculate

{

privateinta;

publicCalculate(inta)

{this.a=a;

System.out.printl(“fromconstrartion”+this.a);

}

publicdoublevolume(doubleheight,doublewidth,douledepth)

{

returnheight*width*depth;

}

intadd(intx,inty)

{

returnx+y;

}

protectedvoida()

{

System.out.println(“fromconstration”+a);

}

}

编译,查看D:

\myjava目录下是否生成了myoackage文件夹,在该文件夹中是否有Calculate.class文件。

(2)编辑Interfaceclass.java,设保存在D:

\myjava目录下。

importmypackage.Calculate;

classPackageDemo

{

publicstaticvoidmain(stringags[])

{

Calculatec=newCalculate(10);

doubles=c.volume(5,6,7);

System.out.println(s);

//intb=c.add(5,6);

//c.a();

}

}

五、注意事项

⒈认真填写实验报告

⒉遵守实验室各项制度,服从实验指导教师的安排

⒊按规定的时间完成实验

实验四、异常处理实验

一、实验目的

⒈异常的生产及捕获

⒉自定义异常及其使用

二、预习内容

面向对象的基本知识

三、实验设备与环境

装有JAVA语言工具软件(JCreator)的微机若干

四、实验内容

⒈异常的捕获

计算两数相除并输出结果。

使用两个catch子句,分别捕捉除数为0的异常和参数输入有误异常。

编译并运行,当输入除数为0时,将有异常出现,当输入的不是整数时,如将30输成了3o,出现的是另一种异常。

⒉定义异常

编写程序包含自定义异常,当输入数值为13和4时抛出该异常。

编辑Ex2.java,设保存在D:

\myjava目录下。

classEx2extendsException

{

Ex2(Stringmsg)

{

super(msg);

}

}

classMyEx

{

privateintx;

voidsetX(intx)

{

this.x=x;

}

voidf1()throwsEx2

{

if(x==13)

thrownewEx2(“Idon’tlike13!

”);

elseif(x==4)

thrownewEx2(“Idon’tlike4!

”);

else

system.out.println(100/x);

}

publicstaticvoidmain(Sstringargs[])

{

MyExa=newMyEx();

try

{

a.steX(5);

//a.setX(13);

//a.setX(4);

//a.setX(0);

a.f1();

}

catch(Exe)

{

Sytem.out.println(“getmessage:

”+e.getMessage());

}

}

编译并运行,分别取消注释上面程序中被注释的语句。

当释放a.setX(13)语句后,查看运行结果,当释放a.setX(4)语句后,查看运行结果。

五、注意事项

⒈认真填写实验报告

⒉遵守实验室各项制度,服从实验指导教师的安排

⒊按规定的时间完成实验

六、说明

⒈建议学时数2学时

实验五、小应用程序实验

一、实验目的

⒈掌握小应用程序的结构及生命周期

⒉掌握带参数小应用程序的编写

二、预习内容

网页制作的相关知识

三、实验设备与环境

装有JAVA语言工具软件(JCreator)的微机若干

四、实验内容

⒈小应用程序生命周期

小应用程序有init()、start()、stop()和detroy()方法,当小应用程序初次加载时,先执行init(),再执行stop()方法。

当小应用程序的窗口从后台恢复到前台时,如当小应用程序的窗口被最小化时,会执行stop()方法,窗口还原时会执行start()方法,这时不执行init()和detroy()方法。

当小应用程序被关闭时,再执行detroy()方法。

编辑AppLife.java,设保存在D:

\myjava目录下。

Importjava.applet.*;

importjava.awt.*;

PublicclassAppLifeextendsApplet

{

staticinta,b,c,d;

intxl=150,yl=50,x2=300,y2=50;

putlicvoidpaint(Graphicsg)

{

g.drawLine(x1,,y1,x1,y2);

g.drawLine(x1,y1,x1,y1+a);

g.drawString(“init”,x1,y1);

g.drawLine(x1+50,y1,x1+50,y1+b);

g.drawString(“start”,x1+50,y1);

g.drawLine(x1+100,y1,x1+100,y1+c);

g.drawString(“stop”,x1+100,y1);

g.drawLine(x1+150,y1,x1+150,y1+d);

g.drawString(“destory”,x2,y2);

}

publicvoidinit()

{

a+=50;

repaint();

}

publicvoidstart()

}

b+=50;

repaint();

}

publicviodstop()

{

c+=50;

repaint();

}

publicvioddestroy()

{

d+=50;

repaint();

}

}

注意问题:

(1)编译AppLife.java。

(2)编辑AppLife.htm,要求存放在与AppLife.class相同的目录下。

(3)运行AppLife.htm。

⒉带参数的小应用程序

编写一个小应用程序,由htm文件向其传递参数。

编写App.java,设保存在D:

\myjava目录下。

importjava.applet.*;

importjava.awt.*;

publicclassAppextendsApplet

{

Stringname;

publicvoidinit()

{

name=getParameter(“name”);

}

publicvoidpaint(Graphicsg)

{

g.drawString(“Welcome”+name,120,50);

}

}

执行步骤:

(1)编译App.java。

(2)编辑App.htm,要求与App.class在同一目录下。

执行App.htm。

五、注意事项

⒈认真填写实验报告

⒉遵守实验室各项制度,服从实验指导教师的安排

⒊按规定的时间完成实验

六、说明

⒈建议学时数2学时

实验五、小应用程序实验

实验六、图形图像实验

一、实验目的

⒈了解Java.awt包中提供的Font类、Color类、Graphics类和Image类

⒉掌握设置控制GUI组件字体和颜色的一般方法

⒊掌握使用Graphics绘制线条、矩形、圆角矩形、椭圆、弧等基本图形

⒋掌握使用Graphics绘制图象

二、预习内容

绘制图形的基本方法

三、实验设备与环境

装有JAVA语言工具软件(JCreator)的微机若干

四、实验内容

⒈绘制图形

编辑Gra.java,保存在D:

\myjava目录下。

importjava.applet.*;

importclasspaint(Graphicdsg)

{

Fontf1=newFont(“Helvetica”,Font.PLAIN,28);

publicvoidpaint(Graphicdsg)

{

g.setFont(f1);

g.setCorol(Corcol,blue);

//在(120,50)处输出字符串“我是美丽的大气球!

g.setCorol(Corol.green);

g.drawOval(100,20,200,100);

g.setCorol(Corol.black);

g.fillOval(180,60,10,10);

g.fillOval(180,60,10,10);

g.setCorol(Cotol.red);

g.drawArc(130,50,50,180,180);

g.setColor(Color.yellow);

g.drawLine(150,120,150,250);}}

(1)编译Gra.java。

(2)编辑Gra.java,要求与Gra.class在同一目录下。

(3)运行Gra.htm。

五、注意事项

⒈认真填写实验报告

⒉遵守实验室各项制度,服从实验指导教师的安排

⒊按规定的时间完成实验

六、说明

⒈建议学时数2学时

 

实验七、GUI(图形用户接口)实验

一、实验目的

⒈掌握用MouseListener和MouseMotionListener接口处处理鼠标事件MouseEvent的方法。

⒉掌握制作菜单及处理菜单事件的方法

⒊掌握创建对话框及定位、显示、激活和关闭对话框的方法

二、预习内容

图形用户接口编程所需的基本类及使用方法

三、实验设备与环境

装有JAVA语言工具软件(JCreator)的微机若干

四、实验内容

⒈制作一个简单的画板

编辑Mou.java,设保存在D:

\myjava目录下。

importjava.applet.*;

importjava.awt.*;

importjava.awt.event.*;

publicclassMouextendsAppletimplementsMouseMotionListener

{

intx=-1,y=-1;

publicvoidinit()

{

setBackground(Color.cyan);

addMouseMotionListener(this);

}

publicvoidpaint(Graphicsg)

{

if(x!

=-1&&y!

=-1)

{

g.setColor(Color.red);

g.drawLine(x,y,x,y);

}

}

publicvoidmouseDragged(MouseEvente)

{

x=(int)e.getX();

y=(int)e.gety();

}

publicvoidmouseMoved(MouseEvente){}//由于使用的是Listener,需要将其他不重载的方//法,列举在这里

publicvoidupdate(Graphicsg)

{

paint(g);

}

}

编译并运行查看结果.

⒉菜单的编写

编辑TestMenu.java,设保存在D:

\myjava目录下。

importjava.applet.*;

importjava.awt.*;

importjava.awt.event.*;

publicclassTestMenu//定义主类

{

publicstaticvoidmain(Stringa

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 表格模板 > 合同协议

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1