您好,欢迎访问三七文档
当前位置:首页 > 建筑/环境 > 工程监理 > 四川师范大学软件工程java实验报告
《Java程序设计》实验教学大纲一、实验课的性质与任务Java语言是新兴起的面向对象程序设计语言,用于应用程序设计,尤其是应用在网络、因特网和移动设备上。为培养学生网络应用程序的编程能力,在学生具有一定的计算机和网络知识的基础上开设Java程序设计课程,使学生能够运用Java语言作为完成应用程序设计的基本工具。本课程将从面向对象的基本概念入手,结合课程设计,较为系统地介绍Java语言的主要特征和编程方法,包括:类型与转换、类的声明与对象产生、继承与多态性、包与接口、数组与字符串、多线程编程以及异常处理、JDBC等内容。通过相关的实验设计,使学生具有一定的网络编程能力。二、实验课程目的与要求1.实验目的:开设该课程设计,目的是让学生在掌握了Java程序设计的基本知识、基本理论方面后,能熟悉Java编程的思想和编程技巧,培养学生分析问题和解决问题的能力及技巧。实验设计覆盖Java程序设计中主要的方法。该课程以讲授、演示和实验法相结合。按照重视基础,突出重点的原则进行。通过程序设计培养学生的程序设计能力、解决和分析问题的能力,使学生对所学的内容有更深入的理解,逐步掌握Java编程方面的技巧。2.实验要求:(1)实验安排在上机时间进行,如在上机时间不能完成可课后完成,到期交经过编译并能正常运行的软件。(2)实验以前,学生应对实验设计的相关知识点和相关设计技术有所了解。(3)每个实验都要求写出实验报告(实验报告包括:实验内容、目的、实现方法、调实验学时:32实验个数:11实验学分:1课程性质:专业限课适用专业:计算机科学与技术、软件工程、网络工程、电子商务教材及参考书:1.《Java语言程序设计》,郑莉等主编,北京:清华大学出版社,20062.《面向对象程序设计与Java语言》,周晓聪等著,北京:机械工业出版社,2004大纲执笔人:郭涛大纲审定人:李晓宁试结果)。三、实验项目及内容提要《Java程序设计》实验课程序号实验项目编号实验名称学时必做选做学分数实验类型内容提要基本操作验证综合设计1一Java基础实验3√√熟悉Java基本语句和程序控制结构2二Java应用程序和小应用程序3√√学会Javaapplication和applet,以及Eclipse的使用3三类与对象4√√使用类来封装对象的属性和功能;学会构造函数的使用和初始化4四类的静态成员与实例成员2√√掌握静态成员与实例成员的区别学会使用类的静态成员5五Java异常处理2√√学会声明用户自己的异常类。掌握异常的抛出和捕获的应用6六接口的实现2√√掌握接口的实现方式使用实现了接口的类理解接口与抽象类的区别7七构造函数的使用4√学会构造函数重载8八子类的派生与方法覆盖4√理解子类派生的概念学习创建子类对象掌握方法覆盖的使用9九上转型对象及多态4√掌握上转型对象的使用学习创建子类对象和继承了解多态的应用10十图形及事件处理4√掌握GUI设计及事件处理11十一学期综合实验√从所给题目中任选一题,并按要求完成实验1Java基础实验实验目的:1)掌握Javaapplication、applet、DialogBox的区别。2)学会在Eclipse下编译、调试和运行程序。3)掌握Java中控制语句、循环语句、数组的使用。实验内容:1、用Javaapplet和application分别编写一个程序进行10年存款的本息计算。要求:1)存款总金额=本金*(1+利率)存款年限amount=principal*Math.pow(1.0+rate,year);2)分别使用Application,applet,和DialogBox完成。applicationimportjava.util.*;publicclasstest1{staticintyear=10;longprincipal;staticdoubleamount;publicstaticvoidmain(Stringargs[]){Scannerin=newScanner(System.in);System.out.println(pleaseinputanumber:);longprincipal=in.nextLong();System.out.println(pleaseinputanumber(0~1):);floatrate=in.nextFloat();amount=principal*Math.pow(1+rate,year);System.out.println(存款总金额为:+amount);}}appletimportjava.applet.Applet;importjava.awt.Graphics;importjava.util.Scanner;publicclasstest1extendsApplet{doubleamount;doublerate;intyear=0,m,principal;publicvoidinit(){Scannerinput=newScanner(System.in);System.out.println(Pleaseenterprincipal:);principal=input.nextInt();System.out.println(Pleaseenteryearsyouwant:);m=input.nextInt();System.out.println(Pleaseenterrate:);rate=input.nextDouble();}publicvoidpaint(Graphicsg){intyPos=55;g.drawString(years,25,yPos);//纵坐标为ypos,横坐标为25g.drawString(amount,100,yPos);for(year=0;year=m;year++){yPos+=15;//纵坐标每次循环到就+15amount=principal*Math.pow(1.0+rate,year);//公式g.drawString(String.valueOf(year),25,yPos);//输出年数,g.drawString(String.valueOf(amount),100,yPos);//输出本息和}}}2、已知两个二维数组a,b,其初值如下:inta[][]=newint[2][3];intb[][]={{1,5,2,8},{5,9,10,-3},{2,7,-5,-18}};求这两个二维数组的乘积。运行结果如下:importjava.util.Scanner;publicclasstest2{publicstaticvoidmain(String[]args){inta[][]=newint[2][3];intb[][]={{1,5,2,8},{5,9,10,-3},{2,7,-5,-18}};intc[][]=newint[2][4];Scannerinput=newScanner(System.in);System.out.println(pleaseenterarraya:);for(inti=0;ia.length;i++){for(intj=0;ja[i].length;j++){a[i][j]=input.nextInt();}System.out.println();//换行操作}System.out.println(***MatrixA***);for(inti=0;ia.length;i++){for(intj=0;ja[i].length;j++)System.out.print(a[i][j]+);System.out.println();}System.out.println(***MatrixB***);for(inti=0;i=2;i++){for(intj=0;j=3;j++)System.out.print(b[i][j]+);System.out.println();}System.out.println(***MatrixC***);for(inti=0;i=1;i++){for(intj=0;j=3;j++){c[i][j]=a[i][0]*b[0][j]+a[i][1]*b[1][j]+a[i][2]*b[2][j];System.out.print(c[i][j]+);}System.out.println();}}}3.采用applet编写一个小应用程序。该程序通过让用户输入1-3数值中的一个,实现线、方形、圆型绘制。要求用户提示采用DialogBox。程序运行结果如下:提示:输入框使用:JOptionPane.showInputDialog()通过查帮助文档,掌握drawLine(),drawRect(),drawOval()方法的使用。基本框架如下:importjava.awt.Graphics;importjavax.swing.*;publicclassdrawlineextendsJApplet{……..publicvoidinit(){……input=JOptionPane.showInputDialog(Enter1todrawlines\n+Enter2todrawrectangles\n+Enter3todrawovals\n);…….}publicvoidpaint(Graphicsg){……}}代码:importjava.applet.Applet;importjava.awt.Graphics;importjava.awt.Color;importjavax.swing.JOptionPane;importjavax.swing.*;publicclasstest3extendsApplet{publicStringinput;intnumber;publicvoidinit(){input=JOptionPane.showInputDialog(Enter1todrawlines\n+Enter2todrawrectangles\n+Enter3todrawovals\n);}publicvoidpaint(Graphicsg){intnumber=Integer.parseInt(input);switch(number){case1:g.setColor(Color.RED);//使用红色for(inti=0;i8;i++){g.drawLine(5,5,5*i+200,5*i+10);//画一条线,起点位置是在点(5,5)和(200,10)之间画一条线。}break;case2:g.setColor(Color.BLUE);for(inti=0;i8;i++){g.drawRect(i*10+5,i*10+5,65+i*17,65+i*17);//画一个矩形,起始(5.5)位置,长度65,宽度65}break;case3:g.setColor(Color.GREEN);for(inti=0;i8;i++){g.drawOval(i*10+5,i*10+5,50+i*15,50+i*15);//画一个圆,起始(5.5)位置,长度50,宽度50}break;default:JOptionPane.showMessageDialog(null,你的输入不正确!);break;}}}实验2Java应用程序和小应用程序实验目的:1、学会Javaapplication和applet,以及Eclipse的使用。2、了解循环语句、方法和构造函数的应用。实验要求:实验一、1、用application编写一个程序,要求通过键盘输入10位学生的成绩,将每个学生的成绩依次进行等级判断。如果成绩=90,A;89~80,B;79~70,C;69~60,D;60,F。2、程序中要求使用inputScore()和judegGrade()两个方法,分别执行成绩的输入和成绩等级的判断。3、实验结果如下图:程序模版:importjava.util.Sca
本文标题:四川师范大学软件工程java实验报告
链接地址:https://www.777doc.com/doc-174907 .html