Java程序设计实验指导书.docx
- 文档编号:12069897
- 上传时间:2023-06-04
- 格式:DOCX
- 页数:14
- 大小:19.31KB
Java程序设计实验指导书.docx
《Java程序设计实验指导书.docx》由会员分享,可在线阅读,更多相关《Java程序设计实验指导书.docx(14页珍藏版)》请在冰点文库上搜索。
Java程序设计实验指导书
实验一Java初级编程(2学时)
1、实验目的
(1)掌握下载JavaSDK软件包。
(2)掌握设置Java程序运行环境的方法。
(3)掌握编写与运行Java程序的方法。
(4)了解Java语言的概貌。
(5)安装、掌握NetBeans软件,为学习Java语言和进行Java程序的实验做好准备工作。
(6)Java语言的基本编程方法,了解基本的语法、语句和数据类型。
2、基本要求:
(1)注意自始至终贯彻课程中所介绍程序设计风格,养成良好的编程习惯。
(2)独立完成所布置习题。
(3)为保证尽量在统一安排的上机时间内编译运行通过程序,应事先设计好程序。
(4)认真完成每次实验,并写出实验报告。
3、实验内容和步骤:
(1)SDK的下载和安装。
在浏览器中输入JavaSE6软件包,并安装改软件包。
(2)设置环境变量,包括设置Java的运行路径和classpath。
(3)下载和安装NetBeans。
在浏览器中输入beans.org/,下载NetBeans并安装。
(4)使用if...else语句构造多分支,判断某一年是否为闰年。
闰年的条件是符合下
面二者之一:
能被4整除,但不能被100整除;能被4整除,又能被100整除。
publicclassEx1_1{
publicstaticvoidmain(Stringargs[]){
intyear=2005;
if((year%4==0&&year%100!
=0)||(year%400==0))
System.out.println(year+"年是闰年");
else
System.out.println(year+"年不是闰年");
}
}
(5)后从键盘输入数字1/2/3后,可显示抽奖得到的奖品;如果输入其它数字或字符显示“没有奖品给你!
”。
importjava.io.*;
classEx1_2{
publicstaticvoidmain(Stringargs[])throwsIOException{
charch;
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("真不幸,你没有奖品!
下次再来吧。
");
}
}
}
}
(6)输出九九乘法表。
publicclassEx1_3{
publicstaticvoidmain(Stringargs[]){
inti,j,n=9;
for(i=1;i<=n;i++){
for(j=1;j<=i;j++)
System.out.print(i+"*"+j+"="+i*j+"");
System.out.println();
}
}
}
(7)创建一个4行5列的二维整型数组,并将其元素打印输出。
publicclassEx1_4{
publicstaticvoidmain(String[]args){
int[][]aMatrix=newint[4][];
for(inti=0;i aMatrix[i]=newint[5]; for(intj=0;j aMatrix[i][j]=i+j; } } for(inti=0;i for(intj=0;j System.out.print(aMatrix[i][j]+""); } System.out.println(); } } } 实验二Java面向对象程序设计(2学时) 1、实验目的: (1)理解Java语言是如何体现面向对象编程基本思想。 (2)了解类的封装方法,以及如何创建类和对象,了解成员变量和成员方法的特性,掌握OOP方式进行程序设计的方法,了解类的继承性和多态性的作用,掌握接口的作用,掌握访问权限的使用,掌握异常的使用。 2、基本要求: (1)注意自始至终贯彻课程中所介绍程序设计风格,养成良好的编程习惯。 (2)独立完成所布置习题。 (3)为保证尽量在统一安排的上机时间内编译运行通过程序,应事先设计好程序。 (4)认真完成每次实验,并写出实验报告。 3、实验内容与步骤: (1)定义表示课程的类Course。 课程的属性包括课程名、编号、先修课号;方法包括设置课程名、设置编号、设置先修课号,获取课程名、获取编号、获取先修课号,以及打印课程名、课程号、先修课号。 编写主程序,创建Course类的对象course,设置course的相关属性,并将属性信息打印输出。 classCourse{ privateStringname=null; privateStringno=null; privateStringpreNo=null; publicvoidsetName(Stringname){ this.name=name; } publicvoidsetNo(Stringno){ this.no=no; } publicvoidsetpreNo(StringpreNo){ this.preNo=preNo; } publicStringgetName(){ returnname; } publicStringgetNo(){ returnno; } publicStringgetpreNo(){ returnpreNo; } publicvoidprintCourse(){ System.out.println("课程名: "+name+",课号: "+no+",先修课号: "+preNo+"."); } } publicclassEx2_1{ publicstaticvoidmain(String[]args){ Coursecourse=newCourse(); course.setName("Java与网络编程"); course.setNo("000111"); course.setpreNo("000000"); course.printCourse(); } } (2)定义接口Shape,其中包括Area方法。 类Circle、Square和Triangle均实现了接口Shape。 定义主函数,创建元素个数为3的Shape类型的一维数组,分别为数组元素创建Circle、Square和Triangle类型的对象,最后分别调用各数组元素的Area方法,输出相关信息。 //将Shape定义为interface interfaceShape{ doublearea(); } //定义Circle类实现Shape classCircleimplementsShape{ finaldoublepi=3.14159; privatedoubler; publicCircle(doubler){ this.r=r; } publicdoublearea(){ returnpi*r*r; } } //定义Square类实现Shape classSquareimplementsShape{ privatedoubles; publicSquare(doubles){ this.s=s; } publicdoublearea(){ returns*s; } } //定义Triangle类实现Shape classTriangleimplementsShape{ privatedoubleb,h; publicTriangle(doubleb,doubleh){ this.b=b; this.h=h; } publicdoublearea(){ returnb*h*0.5; } } //包含main()的测试类 publicclassEx2_2{ staticvoiddrawOneShape(Shapes){ if(sinstanceofSquare) System.out.println("正方形面积为: "+s.area()); elseif(sinstanceofCircle) System.out.println("圆面积为: "+s.area()); elseif(sinstanceofTriangle) System.out.println("三角形面积为: "+s.area()); } staticvoiddrawShapes(Shape[]ss){ for(inti=0;i drawOneShape(ss[i]); } publicstaticvoidmain(String[]args){ Shape[]s=newShape[3]; s[0]=newCircle(1.0); s[1]=newSquare(2.0); s[2]=newTriangle(1.0,2.0); drawShapes(s); } } (3)编制程序,完成自定义异常。 classMyExceptionextendsException{ MyException(){} MyException(Stringmsg){ super(msg); } } classUsingMyException{ voidf()throwsMyException{ System.out.println("ThrowsMyExceptionfromf()"); thrownewMyException(); } voidg()throwsMyException{ System.out.println("ThrowsMyExceptionfromg()"); thrownewMyException("Originateding()"); } } publicclassEx2_3{ publicstaticvoidmain(Stringargs[]){ UsingMyExceptionm=newUsingMyException(); try{ m.f(); }catch(MyExceptione){ e.printStackTrace(); } try{ m.g(); }catch(MyExceptione){ e.printStackTrace(); } } } 实验三Java输入输出(2学时) 1、实验目的: (1)理解数据流的概念 (2)理解Java流的层次结构 (3)理解文件的概念 2、基本要求: (1)注意自始至终贯彻课程中所介绍程序设计风格,养成良好的编程习惯。 (2)独立完成所布置习题。 (3)为保证尽量在统一安排的上机时间内编译运行通过程序,应事先设计好程序。 (4)认真完成每次实验,并写出实验报告。 3、实验内容与步骤: (1)将键盘上输入的字符在屏幕上显示出来。 publicclassEx3_1{ publicstaticvoidmain(String[]args)throwsjava.io.IOException{ bytebuffer[]=newbyte[10]; System.out.println("从键盘输入不超过10个字符,按回车键结束输入: "); intcount=System.in.read(buffer);//读取输入的字符并存放在缓冲区buffer中 System.out.println("保存在缓冲区buffer中元素的个数为: "+count); System.out.println("buffer中各元素的值为: "); for(inti=0;i System.out.print(""+buffer[i]);//在屏幕上显示buffer元素的值 } System.out.println(); System.out.println("输出buffer字符元素: "); System.out.write(buffer,0,buffer.length); } } (2)将保存在本地机当前文件夹中的Ex3_2.HTML文本文件的内容在屏幕上显示出来,然后将其另存为Ex3_2.txt文件。 importjava.io.*; publicclassEx3_2{ publicstaticvoidmain(String[]args)throwsIOException{ FileReaderin=newFileReader("Ex3_2.HTML");//建立文件输入流 BufferedReaderbin=newBufferedReader(in);//建立缓冲输入流 FileWriterout=newFileWriter("Ex3_2.txt",true);//建立文件输出流 Stringstr=null; while((str=bin.readLine())! =null){ //将缓冲区内容通过循环方式逐行赋值给字符串str System.out.println(str);//在屏幕上显示字符串str out.write(str+"\r\n");//将字符串str通过输出流写入Ex3_2.txt中 } in.close(); out.close(); } } (3)保存对象信息到文件,并将文件中的对象信息显示出来。 importjava.io.*; publicclassEx3_3implementsSerializable{//序列化接口 intbh=1;intnl=21; Stringxm; //构造方法 Ex3_3(intbh,Stringxm,intnl){ this.bh=bh; this.xm=xm; this.nl=nl; } //保存到文件中的方法 voidsave(Stringfname){ try{ FileOutputStreamfout=newFileOutputStream(fname);//输出文件流 ObjectOutputStreamout=newObjectOutputStream(fout);//输出对象流 out.writeObject(this);//写入对象 out.close(); }catch(FileNotFoundExceptionfe){} catch(IOExceptionioe){} } //显示文件中对象信息的方法 voiddisplay(Stringfname){ try { FileInputStreamfin=newFileInputStream(fname);//输入文件流 ObjectInputStreamin=newObjectInputStream(fin);//输入对象流 Ex3_3OO=(Ex3_3)in.readObject();//读取对象 System.out.println("类名: "+OO.getClass().getName()+""+OO.getClass().getInterfaces()[0]); System.out.println(""+OO.bh+""+OO.xm+""+OO.nl); in.close(); }catch(FileNotFoundExceptionfe){} catch(IOExceptionioe){} catch(ClassNotFoundExceptionioe){} } publicstaticvoidmain(Stringarg[]){ Stringfname="Ex3_3.obj"; Ex3_3OO=newEx3_3(1,"张驰",14); OO.save(fname); OO.display(fname); } } 实验四数据库编程(2学时) 1、实验目的: (1)掌握基本的DBMS的使用 (2)理解JDBC的概念 (3)运用JDBC-ODBC桥开发数据库系统 2、基本要求: (1)注意自始至终贯彻课程中所介绍程序设计风格,养成良好的编程习惯。 (2)独立完成所布置习题。 (3)为保证尽量在统一安排的上机时间内编译运行通过程序,应事先设计好程序。 (4)认真完成每次实验,并写出实验报告。 3、实验内容与步骤: 完成一个具体的数据库系统的开发,如图书管理系统、人事管理系统、学生信息管理系统等等。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java 程序设计 实验 指导书