欢迎来到课桌文档! | 帮助中心 课桌文档-建筑工程资料库
课桌文档
全部分类
  • 党建之窗>
  • 感悟体会>
  • 百家争鸣>
  • 教育整顿>
  • 文笔提升>
  • 热门分类>
  • 计划总结>
  • 致辞演讲>
  • 在线阅读>
  • ImageVerifierCode 换一换
    首页 课桌文档 > 资源分类 > DOCX文档下载  

    Java程序设计实验报告.docx

    • 资源ID:1463689       资源大小:422.74KB        全文页数:83页
    • 资源格式: DOCX        下载积分:5金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要5金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    Java程序设计实验报告.docx

    二合肥学浣HEFEiVniversity计算机科学与技术系,实.验报告专业名称计算机科学与技术课程名称JaVa程序设计项目名称JaVa语言基础班级学号姓名同组人员试验日期2 .打印“水仙花”数packagesyl;publicclassE×am2(publicstaticvoidmain(Strigargs)for(intnum=100;num<=999;nurtH-+)(inta=num10;intb三(num-a*l)l;intc-um%10;if(aa*a*b*bb÷c*c4c-num)(System.out.print(num+"");)运行结果:153370371473 .用do-while和for循环计算l+l2!+"3!+l4!.的前20项和packagesyl;publicclassE×am3publicstaticintfun(intn)(if(n三=IInl)return1;elsereturnn*fm(nl);publicstaticvoidmain(Strlngargs)doubles=;intn=20;int1=1;do(s+=l(double)(fun(i);ii;while(i<-n);Syste.out.println(*s三*s);doublesl=;for(l=l;i<=n;i+)i11tj;for(j=(int)Math.sqrt(i);j>=2;-j)if(i%j-)break;if(D三=l)System.out.printIn(i);/inti>j;1.oop:for(i三2ji<10ji+)(for(j-2;j<i;j*+)if(iXj三三)continue1.oop;System.out.print(1÷");)运行结果:23571113171923293137414347535961677173798389972.将所输入之正整数,以二、八、十六进制表示出来packagesyl;importjava.util.Scanner;publicclassEXam5(十进制转二进制publicstaticvoidtoBinary(intn)i11ti,j;inta-newint100J;if(n=)System.out.println();for(i=0;n!=0;i+)ai-n%2;11=2;)for(j=i-lj>=0j-)System.out.print(aj);十进制转八进制publicstaticvoidtoOcter(intn)Inti,j;inta-ncwint100;if(n=)System.out.println();for(i=0;n!=0;i+)ai=%8;11-8;for(j=i-l;j>=0;j-)Systeffl.out.print(aJ);)十进制传十六进制publicstaticvoidtoHex(intn)(inti,j;chara=newchar100;if(-)(System.out.println();for(l-0;n!-0;i+)(ai=(char)(n%16);11=16;if(al<l)ai+"8;elseswitch(ai)(case10:ai="A"break;casell:ai='B'break;case12rai-,C*jbrcak;case13zai三,D'break;case14zaiJ=,Ejbreak;case15jai=Fibreak;)for(j=l-lj>=0j-)Systea.out.print(aj);publicstaticvoidmain(Stringargs)(SyStem.out.printIn("谙输入,个正整数:”);Scanners=newScanner(System.in);i11tn=s.ne×tlt();ExamS.toBinry(n);System.outprintln();E×am5.toOcter();System.out.PrintIn();ExamS.toHex(n);s.close();)运行结果:请输入一个正整数:lll12A类和对象一、试验目的与要求:目的,1.驾驭JaVa类的结构、类的定义、方法和属性的定义以及对象的实现;2 .驾驭类及其成员修饰符的运用:驾驭构造函数的运用:方法的参数传递和返回值的用法:3 .驾驭类变量与实例变量,以及类方法与实例方法的区分。要求:1 .正确地定义类、方法和属性;2 .学会方法的参数传递和返回值的用法:3 .娴熟运用类及其成员修饰符4 .运用构造函数创建类的对象:5 .类变量与实例变量,以及类方法与实例方法的运用6 .程序应包括各个被调用方法的执行结果的显示。7 .写出试验报告。要求记录编译和执行JaVa程序当中的系统错误信息提示,并给出解决方法.(附运行界面、源代码)。二、试黯内容;1.定义个学生类(StUdent),属性有PriVate的名字(name),PUbliC的年龄(ag。),专业(specialty)和封装name属性的方法:SetName(),getName(),getspecialtyO编写APPliCation,创建一个学生对象,设置name和age属性值,然后调用个方法(此方法将对象作为参数传递,在方法中打印出学生的名字name和年龄Uge)。(学生类仅包含静态成员变量和方法。)8 .定义一个类POinI,代表一个点,public屈性有X和y,方法有显示点坐标show(),构造函数有两个参数分别给x,y赋值,在main方法中构造两个对象,再创建一方法(getMiddlc)为取两个点构成线段的中点的坐标,参数为2个点对缴,调用此方法后得到一个新的点,编写.Application,显示该对象的坐标值。9 .定义一个复数(z=x+iy)类COmPleX,包含:两个属性:实部X和虚部y默认构造函数ComplexO,设置x=0,y=0构造函数:Complex(inti,intj)显示更数的方法:ShOWC<xnp将其显示为如:5+8i或5-8i的形式。求两个史数的和的方法:(参数是两个发数类对象,返回值是发数类对象)publicComplexaddCo<np(ComplexCl,ComplexC2)求两个更数的差的方法:(参数是两个更数类对象,返回值是豆数类对象)publicComplexsubCo<np(ComplexCl,ComplexC2)求两个复数的乘积的方法:(参数是两个复数类对象,返回值是兔数类对象.新城数实部一两复数实部乘积-两任数虚部乘积,新现数虚部二两耳数实部与虚部交叉乘积之和,)publicComplexmuItiComp(ComplexCl.ComplexC2)比较两个复数是否相等的方法(参数是两个复数类对象,返回值是boolean类里)publicbooleanequalComp(ComplexCl,ComplexC2)在Application中测试该类的方法,实部X和虚部y可由main方法参数供应输入。1.学生类packagesy2;classStudent(privatestaticStringname;publicintage;publicstaticStringspecialty;staticStringSetName(Stringna)(n!re=11a;returnname;)staticStringgetName(Stringna)nwe=na;returnname;)intgetAge(inta)age-a;returnage;)staticvoidgetspecialty(Stringspe)(SPeCiG1.ty=spe;)classExamlpublicstaticvoidmain(Strigargs)Studentstu三newStudent();System.out.printIn(''姓名;“+Student.Se亡/Vm2("1.imimg")+”n"+Student.getNwe("1.iming");System.out.println(',frb',÷stu.getAge(20);pl.show();p2.show();p3.getMiddle(pl,p2);p3.show();)运行结果:该点的坐标为:(1,2)该点的坐标为:(3,4)该点的坐标为:(2,3)3.复数类packagesy2;importjava.util.Scanner;classComplexInt×,y;Complex()(this.x=0;this.y=;Cofliple×(inti,intj)this.×=i;this.y-j;)voidshkComp()if(this.y>)System,out.println(this,×÷*÷this.y÷*'i");if(this.y<)SyStem.out.print】n(this.x+""+this.y+"i");publicComplexaddComp(ComplexCllComplexC2)(this.×=C1.x+C2.×this.y=Cl.y+C2.y;returnthis;publicComplexSUbCOmP(ComPleXCljComplexC2)this.×=C1.x-C2.x;this.y=Cl.y-C2.y;returnthis;publicComplexmultiComp(Comple×Cl,ComplexC2)(this.×=C1.×*C2.×-Cl.ytC2.y;this.y-Cl.x*C2.y<l.y*C2.x;returnthis;publicbooleanequalCOlnP(ConPleXCl,ComplexC2)(if(Cl.x=C2.x&&Cl.y=C2.y)returntrue;elsereturnfalse;)publicclassE×am3publicstaticvoidmain(Stringargs)int×l,yl,×2,y2;Scanners=newScaner(System.tn);×l=s.nextlt();yl-s.nextlt();x2三s.nextlnt();y2=s.nextlnt();Complexcl=newCo<nple×(×l,yl);Complexc2-newCOmPleX(X2,y2);cl.showComp();c2.showCfflp();cl.addComp(cl>c2);cl.showCo<np();cl.subComp(cl,c2);cl.showCofnp();cl.mltiComp(cljc2);cl.ShowCofflpO;booleanb=cl.equalCo<11p(cl,c2);System.out.println(b);s.close();运行结果:12341+213+4i4÷6il+2i-S-14iFalse三、试验分析与小结:1 .(第1题)定义一个学生类(StUdent)及它的属性和方法;定义主类和main。,在Inaino方法中创建学生对象,并通过对象调用它的方法SelName0,getNa三e0,输出学生的名字name和年龄age.2 .(第2题)定义类Point及它的属性、方法和构造函数,定义主类和main。.在main。方法中创建两个坐标对象,并通过对象调用getMiddle方法后得到一个新的点坐标,调用ShOH()显示该对象的坐标值。3 .(第3题)定义个笈数(z=x+iy)类COInPlex,及它的属性、方法和构造函数:定义主类和main。方法,在main。方法中创建两个复数类Complex对软,并通过更数类对象调用它们的属性和方法,输出方法执行结果。在用ScannersnewScanner(System,in);创建一个对象时,最终肯定要用s.close。;关闭资源,否则会出现ReSoUrCeleak:'s'isneverclosed警告四、其它自做试改1.构造一个类来描述屏幕上的一个点,该类的构成包括点的X和y两个坐标,以及一些对点进行的操作,包括:取得点的坐标值,对点的坐标进行赋值,编写应用程序生成该类的对彖并对其进行操作。2 .编写实现:有一个角形类TriangIe,成员变量有底边X和另一条边y,和两边的夹角a(0<a<180),a为静态成员,成员方法有两个:求面积S(无参数)和修改角度(参数为角度)。3 .编写实现:构造函数为TriangIe(iniXX,intyy,intaa)参数分别为x,y,a赋值在main方法中构造两个对象,求出其面枳,然后运用修改角度的方法,修改两边的夹角,再求出面积值。(提示:求高的方法hy*Math.sin(八))留意:构造方法用于对成员变出初始化,无参数的构造方法聘成员变量初始化为0值。点类:packagesy2;importjava.util.Scanner;classP(i11tx,y;P(intxx,intyy)<this.×=x×this.y-yy;publicintget×()returnx;)publicvoidsetX(int×)this.x三x;SyStem.out.printing正得X的做为:"+x);publicintgetY()(returny;)publicvoidsetY(inty)(this.y=y;System.out.print1n("iftyffi:,÷y);)publicstaticdoubleSlOPe(Ppl,Pp2)doubles;s-(2.getY()pl.getY()(double)(p2.getX()-pl.get×();returns;)publicclassEXam5publicstaticvoidmain(Stringargs)i11tx,y,×l,yl;Scanners=newScanner(System.in);x=s.nextlnt();y-s.nextlnt();xl=s.11extlnt();yl=s.11extlnt();Ppl=11ewP(x,y);Pp2=newP(×l,yl);SyStem.out.println(“该点的横中标为:"+plgetX();SyStem.out.print】n("该点的圾坐标为:n+pl.getY();5y$t.out.printIn(0两点的斜率为:*÷P.stOPe(l,p2);pl.setX(l);pl.setY(2);s-close();)运行结果t3S01该点的横坐标为:3该点的纵坐标为:5两点的斜率为11.3333333333333333获得X的依为:10获得y的值为:2三角形TriangIe类packagesy2;classTriangledoublex,y;staticdoublea;Triangle(double"doublejdoublek)this.×=i;'+,("+×+,+y+"'+z+")");publicdoubledistance(Point2Dp2dl,Point2Dp2d2)doubled=Math.sqrt(p2d2.×-p2dl.×)*(p2d2.×-p2dl.×)+(p2d2.y-p2dl.y)*(p2d2.y-p2dl.y);returnd;publicdoubledistance(Point3Dp3dl,Point3Dp3d2)(doubled=Math.sgrt(p3d2.×-p3dl.×)*(p3d2.×-p3dl.×)+(p3d2.y-p3dl.y)*(p3d2.y-p3dl.y)+(p3d2.y-p3dl.y)*(p3d2.z-p3dl.z);returnd;)publicclassExamlpublicstaticvoidmain(Stringargs)Point2Dp2dl=newPoint2D(l,2);p2dl.offset(lj2);Point2Dp2d2=newPoint2D(3,4);p2d2.offset(l,2);Point3Dp3=newPoint3D(p2dl,3);p3.o÷fset(l,2,3);doubled=p3.distance(p2dl,p2d2);System.out.Println(“二维两点间的距离为;"+d);Point3Dp31=newPoint3D(1,2,1);Point3Dp32三newPOint3D(2,3,2);doubledl=p3.distance(p31,p32);System.out.println("三维两点间的距离为;-+dl);运行结果:平移后的坐标为:(4,6)平移后的坐标为:(1,2,6)二维两点间的距离为;2.8284271247461903三维两点间的距离为;1.73205080756887722.packagesy3;abstractclassShape(abstractvoidshowArea();classRectangleextendsShapeimplementsDiagAreainta,b;Rectangle(inti,intj)(this.a=i;this.b=j;)voidshowArea()doublearea=this.getArea();SyStem.out.Println("矩形的长为:"+a+"矩形的宽为:"+b+"矩形的面积为:"+area+”矩形的对角线长为:"+this.getDiagonal();)publicdoublegetArea()(returnab;)publicdoublegetDiagonal()(returnMath.sqrt(a*a+b*b);)classCircleextendsShape(intr;Circle(inta)this.r=a;voidShowArea()doublearea=Math.PI*r*r;System.out.println("M的面积为:"+area);classSquareextendsShapeimplementsDiagArea(intb;Square(inta)(this.b=a;voidShowArea()(doublearea=this.getArea();SyStem.out.println("正方形的边长为:"+b+"iE方形的面积为:"+area+”正方形的对角线为:"+this.getDiagonal();)publicdoublegetDiagonal()returnMath.sqrt(2*b*b);)publicdoublegetArea()returnb*b;interfaceDiagAreadoublegetDiagonal();doublegetArea();publicclassEXam2publicstaticvoidmain(Stringargs)Rectanglerec=newRectangle(4,3);rec.showArea();Squaresqu三newSquare(4);squ.showArea();Circlec=newCircle(10);c.showArea();)运行结果:矩形的长为:4矩形的宽为:3矩形的面枳为:12.0矩形的对角线长为:5.0正方形的边长为:4正方形的面积为:16.0正方形的对角线为:5.656854249492381圆的面枳为三、试验分析与小结:1 .(第1题)定义POint2D,及定义它的属性和方法:定义子类Point3D.及定义它的属性和方法:在Point3D中的主函数main。中实例化两个Point2D的对象,并通过这两个对象调用它们的属性和方法,输出方法执行结果。2 .(第2题)定义抽象类ShaPe,抽象方法为ShOmea(),再定义矩形类ReCtangIe,正方形类SqUare,圆类Circle,和各自的属性。定义主类、主方法,在main方法中构造3个对象,调用ShOWArea方法:定义接口DiagAroa,其中包含方法doubleKetDiagonal(),在主rruin方法中输出方法执行结果。吗、其它自做试改1,定义一个描述人的基本类,该类包括人的性别和诞生日期两个数据成员,以及设置和获得这些屈性值的方法成员:再定义一个高校生类,使高校生类具有人的全部属性外,还具有姓名、学号,高校入学成果,籍贯属性以及设置和获得这些属性值的方法成足:编写完整的程序,完成一个具有班级学生信息管理功能的程序。代码:packagesy3;classPerson(charsex;Stringbirth;Person()Person(chars,Stringbin)(se×=s;birth=bir;)publicvoidsetSex(chars)(this.se×=s;)publicchargetSex()(returnsex;)publicvoidsetBirth(Stringbir)this.birth=bir;)publicStringgetBirth()(returnbirth;)publicvoidprint()SyStem.out.println("性别:"+this.getSex()+"n"+"诞生Il期:"+this.getBirth();)classCollegeextendsPerson(Stringname;intno;doublescore;Stringorig;College(Stringna,intnjdoubles,Stringor)name=na;no=n;score=s;orig=or;)publicvoidsetName(Stringname)(this.name三name;publicStringgetName()(returnname;)publicvoidsetNo(intno)(this.no=no;publicintgetNo()(returnno;)publicvoidsetScore(doublescore)(this.score=score;)publicdoublegetScore()(returnscore;)publicvoidsetOrig(Stringorig)(this.orig=orig;)publicStringgetrig()(returnorig;)publicvoidoutput()System.out.printIn("姓名:"+this.getName()+"11"+"学号:“+1:15612()+"0"+”入学成果:"+this.getScore()+"n"+"ll:"+this.getrig();)publicclassE×am3(publicstaticvoidmain(Stringargs)(Personp=newPerSon('男',"19940502");p.print();Collegec=newCoIlegee李明”,4,580,“合肥”);c.output();运行结果:性别:男诞生日期:19940502姓名:李明入学成果:580.0籍贯:合肥2.创建一个接口ShaPe,其中有抽象方法area,类CirCIe、ReCtangle实现area方法计算其面积并返回。又有Star实现ShaPe的area方法,其返回值是O.Star类另有一返回值blean型方法isStar:在main方法里创建一个VeCtor,依据随机数的不同向其中加入ShaPe的不同子类对象(如是1,生成Cirde对象:如是2,生成ReCtangIe对象:如是3.生成Star对象)。然后将VeCtor中元素依次取出,推断其是否为Star类。如是返回其是个Star。否则返回其面枳。代码:packagesy3;interfaceShap(doublearea();classCirimplementsShap(doubler;Cir(doubler)this.r=r;)publicdoublearea()(returnMath.PI*r*r;)classRectangimplementsShapdoublea,b;Rectang(doublealdoubleb)(this.a=a;this.b=b;publicdoublearea()returna*b;)classStarimplementsShappublicdoublearea()return0;)publicbooleanisStar()returntrue;publicclassEXam4publicstaticvoidmain(Stringargs)Circ=newCir(10);SySteIn.out.printin("圆形的面积为:"+c.area();Rectangrec=newRectang(3,5);SyStem.out.println(“长方形的面积为:"+rec.area();Stars=newStar();SyStem.out.println("星形的面积为:"+s.area();运行结果:圆形的面积为:长方形的面积为:15.。星形的面积为:APPlet类及应用一、试验目的与要求I、试验目的,驾驭applet的程序结构和运行方式;驾驭从html文档向JaVaAPPIet传递参数的方法:了解applet程序的生命周期:驾驭在APPIeI中对字体、颜色、播放声音、显示图像和动画限制方法;(2X试脸要求I1 .必需编写成JaYaAPPleI程序:2 .能够通过传递参数限制一种或者几种图形的绘制:3 .写出试验报告。要求记录编译和执行Java程序当中的系统错误信息提示,并给出解决方法。(附运行界面、源代码)。二、试脸内容1 .编写APPICt程序,变更applet窗口大小,使其最大化、最小化,查看init()、start()、Paint()、和destroy。方法的执行状况(执行依次和执行次数)2 .编写八PPIet显示字符串,显示字符串及其显示位置,字体、字体大小和颜色通过HTM1.文件中的参数来传递。3 .编写APPIeI(大小140*60),其背景色为蓝色,画一个长方形(其填充色为Pink,各边离边小于10像素)和一个在烦充的长方形中左右移动的小球(半径15)4 .实现一个ApPlel,显示一幅图片。不停地运行一个动画。三、试验分析与小结:试验1代码如下:packagesy8;importjava,applet.Applet;importjava.awt.*;importjava,applet.*;importjava.awt.*;pubIicclassE×am1extendsAppIetprivatestaticfinalIongserialVersionUID=11.;pubIicinta=newint0,0,0,0);pubIicColorcolor=Color.blue,Color.red,Color.cyan,Color.green);pubIicvoidinitO(a0+;pubIicvoidstart()1÷÷pubIicvoidpaint(Graphicsg)(a2+;g.draw1.ine(20,200,220,200);g.draw1.ine(20,200,20,20);g.drawString("init",40,215);g.drawString("start",90,215);g.drawString("paint",140,215);g.drawString("destroy",190,215);for(inti=0;i<4;i+)(g.setCoIor(coIori);g.fillRect(25+i*50,200-10*ai,50,10*ai);g.drawString(""+ai,40+i*50,180-10*ai);a3+;1)试脸一结果如下:图小-×小应用理序己后则'应用底序。I*g'试验二代码如下:packagesy8;importjava.applet.Applet;importjava.awt.Color;importjava.awt.Font;importjava.awt.Graphics;SUPPreSSWarningS("seriaF)AppletpublicclassExam2extendsStrings;inth,x,y;Fontft;publicvoidinit()(s=getParameter(,str");h=lnteger.parselnt(getParameter("size");x=lnteger.parselnt(getParameter("xl");y=lnteger.parselnt(getParameter("yl");ft=newFont("宋体”,FontBO1.D,h);)publicvoidpaint(Graphicsg)(g.setColor(Color.red);g.setFont(ft);g.drawString(s,x,y);试验二结果如下:publicclassE×am3extendsApplet(itj=1;publicvoidpaint(Graphicsg)(g.setcolor(Color.btue);g.fillRect(0j0,200,240);g.SetColor(Color.Pinh);g.drawRect(20,20,100,200);g.fillRect(2,20,l,200);while(j>0)for(inti=0;i<=75;i=i+15)(tryThread.sleep(100);catch(InterruptedExceptione)/e.printStackTrace();g.setColor(Color.green);g.drawval(15+i,15,15,15);g.fillval(15+i,15,15,15);try(Thread.s1.eep(,10);catch(InterruptedExceptione)/e.printStackTrace();g.setcolor(Color,pin/?);g.drawRect(20,20,100,200);g.fillRect(2,20,100,200);for(inti=75;i>=0;i=i-15)try(Thread.sleep(100);catch(InterruptedExceptione)importjava.awt.Image;SuppressWarnings("serial")pubIicclassExam4extendsAppIt(Imageim;inttotaI=3;intcurrent=0;pubIicvoidinit()(im=newImagetotaI;for(inti=0;i<totaI;i+)imi=getImage(getDocumentBaseO,"6na11+(i+1)+".jpg");)pubIicvoidpaint(Graphicsg)g.drawlmage(imcurrent,20,20,250,250,this);currnt=+currnttotaI;tryThread,sIeep(1000);catch(InterruptedExceptione)OrepaintO;)试脸效果:连续显示此幅图片。四、其它自做试验,5,自定义椭圆(或圆)的方法,画一组椭圆(最大半径200),以圆心处为参考点,半径依次增加2个像素,圆周的颜色随机。代码,packagesy8;importjava.awt.*;importjava.applet.*;importjava.util.Random;SppresSWarnings("serial")

    注意事项

    本文(Java程序设计实验报告.docx)为本站会员(夺命阿水)主动上传,课桌文档仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知课桌文档(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-1

    经营许可证:宁B2-20210002

    宁公网安备 64010402000986号

    课桌文档
    收起
    展开