欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > DOCX文档下载  

    Java网络编程实验报告.docx

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

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

    Java网络编程实验报告.docx

    中国矿业高校计算机学院级本科生课程报告课程名称网络编程一报告时间学生姓名学号专业一信息平安任课老师陆亚萍publicGCD(intm,intn)this.m=m;this.n=n;publicvoidCirculation(intm,intn,intk)do(k=m%n;m»n;n=k;while(k!=0);SyStem.out.print1n("利用循环法得到的最大公约数为:"+m);)publicvoidRecursion(intm,intn,intk)k=m%n;if(k!=0)ReCUrSion(n,k,m);elseSySteE.out.print1n("利用递IU法得到的最大公约数为:"+n);试验结果:®Javadoc&DeclarationSConsole巴terminated>Myjaval(2)JavaApplication话输入两个整数m,n1824利用循环法得到的最大公约数为:6利用递归法得到的最大公约数为:62.编写一个完整的JaYaAPPliCation程序,其中设计一个旦数类ComPIex,利用它验证两个第数l+2i和3+4i相加产生一个新的豆数4+6i.复数类ComPlCX的设计必需满意如下要求:1) Complex的属性有:realPan:int型,代表复数的实数部分:maginParl:int型,代表且数的虚数部分。2) Complex的方法有:COmPIex():构造方法,将笼数的实部和虚部都置0:ComPlCX(intr.inti):构造方法,形参!为实部的初值,i为虚部的初值。3) ComPlCXCOmPICXAdd(ConIPlCXa):将当前更数对象与形参爱数对象相加,最终的结果仍是一个或数对以,返I可给此方法的调用者.4) StringtoString():把当前宏数对象的实部、虚部组合成a+bi的字符串形式,其中a和b分别为实部和虚部的数据。代码实现:importjava.io.*;publicclassMyjava2publicstaticvoidmain(Stringargs)throwsIOExceptionfbytebuf=newbyte20;Stringstr;intmjn;SyStem.out.println("请分别输入第一个复数的实部与虚部:”);System.in.read(buf);str=newString(buf);m三Integer.parselnt(str.trim();System.in.read(buf);str=newString(buf);n三lnteger.prselnt(str.trim();Complexcomplexl=newCOmPIeX(m,n);SyStem.out.println("请分别输入其次个发数的实部与虚部:”);System.in.read(buf);str=newString(buf);m=Integer.porselnt(str.trim();System.in.read(buf);str=newString(buf);n=lnteger.prselnt(str.tri11();Complexcomple×2三newComplex(m,n);Complexcomplex3=newComplex();complex3=comple×2plexAdd(complexl);SyStem.out.Println("两个更数的和为:,+comple×3.toString();)classComplexpublicintrealPart;publicintmaginPart;publicComplex()this.realPart=;this.maginPart=0;publicComplex(intrealPart,intmaginPart)this.realPart=realPart;this.maginPart=maginPart;publicStringtoString()Stringstr三newString();Stringstrl=newString();Stringstr2=newString();Strl=Integer.toString(realPart);str2=Integer.toString(maginPart);str=""+strl+"+,+str2+"i"returnstr;publicComplexCmplexAdd(Complexa)this.realPart=realPart+a.realPart;this.maginPart=maginPart+a.maginPart;returnthis;)试验结果:®JaVadOCl,Declaration5Console汉Cterminated>MyjoVa2(2)JavaApplication请分别输入第一个复数的实都与底部:23请分别输入第二个复数的实都与成都:39两个复一的和为:5+12i3 .编写一个包含圆类的程序,并为圆类设计几个构造方法和一般方法,在主方法中创建一个圆类对缭并输出它的周长和面积。要求:属性有3个:x.y.r,分别放置同心坐标和半彳缶this.×=x;this.y=y;this.r=r;publicdoublezc()doublePerifneter=2*3.14*r;returnPerimeter;publicdoublemj()doubleArea=3.14r*r;returnArea;)试验结果:益Javadoc凰DeclarationOConsole3<terminated>Myjava3(2)JavaApplicationD?请输入圆的横纵坐标及半径:115囱的周长为:31.400000000000002区的面积为78.54 .编写一个程序,它含有一个圆类、圆柱类和主类。要求:D一类参考上一题中的圆类:2)Ia柱类:继承网类,并加入一个属性h(高):构造方法(给4个属性赋值);计算面积的方法(doublenj():计算体积的方法(doubletj()o留意,要充分利用父类的方法。3)主类:在主方法中创建圆和圆柱类的对象,然后计算并输出它们的面积及圆柱的体积。代码实现:importjava.io.*;publicclassMyjava4publicstaticvoidmain(Stringargs)throwsIOException(bytebuf=newbyte20;Stringstr;intx,y,r,h;SyStem.out.println("请输入例I的坐标、半径及圆柱的高:");System.n.read(buf);str三newString(buf);×=lnteger.prselr)t(str.trim();System,in.read(bu-f);str三newString(buf);y=lnteger.prselnt(str.trim();System.in.read(buf);str三newString(buf);r=lnteger.prselnt(str.tri11();System.in.read(buf);str三newString(buf);h=lnteger.prselnt(str.trim();Circlecircle=newCircle(xjyjr);Cylindercylinder三newCylinder(x,y,r,h);System.out.println("阀的面积为"+circle.mj();SyStem.out.println("阿柱的表面积为"+cylinder,mjl();SyStem.out.println("圆柱的体枳为"+cylinder.tj();classCirclepublicint×publicinty;publicintr;publicCircle()x=0;y=;r=0;publicCircle(intx,inty,intr)this.×三x;this.y=y;this.r=r;publicdoublezc()doublePerimeter=2*3.14*r;returnPerimeter;)publicdoublemj()doubleArea=3.14r*r;returnArea;classCylinderextendsCirclepublicinth;publicCylinder(int×iinty,intr,inth)this.×三x;this.y=y;this.r=r;this.h=h;publicdoublemjl()return2mj()+h*zc();publicdoubletj()returnmj()*h;)试脸结果:Javadoc困DeclarationOConsoleX?<terminated>MyiaVa4(1)(JavaApplication请输入圆的坐标、半径及图柱的高:1153国的面积为78.5图柱的表面积为251.2圆柱的体枳为235.55 .编写一个含仃5个类的程序:类Person:属性:编号、姓名、性别:构造方法:审定编号和姓名:股方法:修改编号、姓名,获得编号、姓名。类Teacher:继承类Person并增加:属性:系别:构造方法:调用父类的构造方法:一般方法:修改、获得系别。类Student:维承类PCrSOn并增加:届性:班级;构造方法:调用父类的构造方法:般方法:修改、获得班级属性值.类Classes:属性:班级名称,学生名单(StlKICnl类对象的数组);构造方法:确定班级名称:股方法:建立学生名单.,输出学生名单。类Main:主类。主方法中创建一个班级,然后建立该班级的学生名单,最终输出学生名单。代码实现:importjava.io.*;publicclassMyjavaSpublicstaticvoidmain(Stringargs)throwsIOE×ceptionbytebuf=newbyte20;Stringstr,classroom,name;intid,i,n;SyStem.out.println("请输入班级名:“);System.in.read(buf);ClaSSrOom=newString(buf);Classesclasses=newClasses(Classroom);SyStem.out.println("请输入班级的人数:");System.in.read(buf);str=newString(buf);n=Integer.porseZnt(str.trim();System.out.println("请输入学生.的学号和名字:”);for(i=0;i<n;i+)System.in.read(buf);str=newString(buf);Id=Integer.prselnt(str.trim();System.in.read(buf);name=newString(buf);Studentstudent=newStUdent(id,name);classes.BuildStudent1.ist(i,student);)classes.getStudent1.ist(n);)classPersonpublicintid;publicStringsex;publicStringname;publicPerson()publicPerson(intid,Stringname)this.id=id;this.name=name;)publicvoidchange(intnewid,Stringnewname)id=newid;name=newname;)publicvoidget()System.out.println(id+""+name.trim();classTeacherextendsPersonpublicStringdepartment;publicTeacher()super();publicTeacher(intid,Stringname)super(idjname);)publicvoidChangeDepartment(Stringnewdepartment)department=newdepartment;publicvoidgetDepartment()System.out.print("Department"+department);)classStudentextendsPersonpublicStringclassroom;publicStudent()SUPer();publicStudent(intidjStringname)SUPer(id,name);publicvoidchangeClassroom(Stringnewclassroom)cIassroom=Rewclassroom;publicvoidgetClassroom()System.out.print("Classroom"+classroom);)classClassespublicStringCIaSSName;publicStudentstr=newStudent100;publicClasses(StringclassName)this.ClassName=ClassName;publicvoidBuiIdStudent1.ist(inti,Studentstudent)stri=student;publicvoidgetStudent1.ist(intn)inti;for(i=0;i<n;i+)stri.get();试验结果:&JavadocDeclaration5Console汉<terminated*MyjavaS(2)JavaApplication请愉入班线名:×a3请输入班级的人数:5请输入学生的学号和名字:012b3C4d5ea02b03c04d05e1a6.请细致阅读下面的程序,分析程序的结构和输出结果再将程序上机运行,验证输出结果。(重点理解:抽象类、抽象方法、(匿名)内部类、匿名对象)abstractclassAabstractStringgetS();)classTeslpublicstaticvoidmain(Stringargs)(System.out.println(newA()(StringgetS()reiurn”抽象?匿名?"|.getS();1)试验结果:试验七图形用户界面应用程序设计一、试验目的和要求驾驭有事务处理的图形用户界面程序的结构和设计方法,提高图形用户界面应用程序设计的实力。要求至少完成试验内容题的80%。二、试验内容1.卜面的程序运行后界面如卜.图所示:importjava.awt.*;classPressMeextendsFramestaticTextFieIdt=ncwTxtField("您还没按我呢!",12);staticinti;publicstaticvoid11uun(Stringars11)(PrcssMcf=ncwPrcssMe();f.sei1.ayout(newFlowIayoui();EsetTiUeCPressMe");Buttonb=ncwButton("PressMe'"):Eadd(t);f.add(b);f.resize(170,100);f.show():)程序没有实现事务处理,请添加适当的代码,使窗口能够累计点击按钮的次数,如下图是点击3次后的结果.要求分别用三种方式实现事务处理:1)让PressMc类实现事务接口;2)另外加一个实现事务接口的类;3)只加入一个语句.代码实现:importjava.awt."publicclassMyjava2extendsFramestaticinti=;publicstaticvoidmain(Stringargs)Myjava2f=newMyjava2();f.setTitle("变脸!");f.setSize(20,200);f.swQ;publicbooleanmouseUp(Evente,intx,inty)i+;repaint();returntrue;publicvoidpaint(Graphicsg)if(i%2=0)g.setColor(Color.btue);g.drawOval(S0,50,80,100);g.drawArc(7,110,4,20,18,180);g.drawArc(7,70,15,15,18);g.drawArc(10,7j15,15,180);g.drawString("",5,5);else(g.setcolor(Color.b1.ue);g.drawOval(S0j50,80,100);g.drawArc(70,110,49,20,180);g.drawArc(70,70,15,15,180,180);g.drawArc(100,70,15,15,180,18);g.drawString("¾!",50,50);成验结果:关!3 .设计个“自助早餐''的图形界面事务处理程序,运行后界面如下图左:选择早点后界面如卜.图右;点击,退出”则结束程序运行。(提示:须要编写列表的ilcmStatcChangcd()事务处理方法)-IDl×l圈自助早餐请选择早点:您选择了:房自助早,,l×l您选择了:沅沅远011哽0111.d退出馒头0.2沅元元元Ooo3500.0.1.退出代码实现:importjava.awt.*;importjava.at.event.;publicclassMyjava3extendsFramepublicstaticvoidmain(Stringargs)Breakfastf=newBreakfast。;f.gw();)classBreakfaStextendsMyjava3doublePriCeU=0,0,0.2,0.3,0.5,0.8,0.5,1;publicBreakfast()SetSiZe(35。,250);SetTitlee自助早f);set1.ayout(newGrid1.ayOUt(I,2);Panelpl=newPanel();Panelp2=newPanel();Buttonb=newBUtton("退出");b.addActio1.istener(newAction1.istenerOpublicvoidactionPerformed(ActionEvente)(System.exit(0););pl.set1.ayout(newFlow1.ayout();p2.Set1.ayout(newBorder1.ayout(1,2);1.abelll=new1.abe1("谙选择早点:”);1.abel12=new1.abe1("您选择了:”);TextAreat=newTextArea(6,10);1.istlist三new1.ist(ll,true);list.add("名称单价");list.add("");list.add("慢头0.20元“);list.add(n花卷0.3。元”);list.add("面包0.50U");list.add("蛋糕0.80c");list.add("豆浆0.50元“);list.add("牛奶1.00元”);IiSt.additemlistener(newItemlistener()(publicvoiditemStateChanged(ItemEvente)intselected三list.getSelectedIndexesO;doubletotal=;for(inti=0ji<selected.length;1+)total三total+priceselectedi;)Stringname=Iist.getSelectedItems();Stringnames=for(intk=0jk<name.Iengthjk+)(names=names+namek+"n")t.setTe×t(names+,总计"+total+"元"););add(pl);add(p2);pl.add(ll);pl.add(list);p2.add("North",12);p2.add("Center",t);p2.add("South"jb);瓜验结果:£:送秣了:o.oo.。O14 .开发一个加、减、乘、除四则运算器。用户界面如下图:暖计算器回区代码实现:importjava.at.*;importjava.awt.event.Actionvent;importjava.awt.event.Action1.istener;publicclassMyjava4publicstaticvoidmain(Stringargs)Calculatorc=newCalculator();c.swQ;classCaj1.CSIatOrextendsFramedoublem,n,k;publicCalculator()SetTitler计算器”);set1.ayout(newFlow1.ayoutO);setSize(200.160):TextFieldtl,t2,t3;tl=newTextField(ZG);t2=newTextField(20););bl.setForeground(new);b2.setForeground(new);b3.setForegrOUnd(new);b4.setForeground(newt3=newTextField(20);Buttonbl三newButton(Coj1.or(255,0,0);Buttonb2=newButton(COlOr(0,255,0);Buttonb3>newButton(CoIOr(I28,42,42);Buttonb4=newButton(Color(0,0,255);bl.addAction1.istener(newAction1.istener()publicvoidactionPerformed(Actionvente)m=Double.pflrseDouble(tl.getText().trim();n=Double.parseDoub1.e(t2.getText().trim();k=m+n;t3.setText(""+k););b2.addActio1.istener(newAction1.istenerO(publicvoidactionPerformed(ActionEvente)m=Double.parseDoubte(t1.getTe×t().trim();n=Double.porseDouble(t2.getText().trim();k=m-n;t3.setText(""+k););b3.addAction1.istener(newAction1.istener()publicvoidactionPerformed(ActionEvente)(m=Double.parseDoub1.e(tl.getText().trim();n=Double.porseDobte(t2.getTe×t().trim();k=m*n;t3.setText(""+k););b4.addAction1.istener(newAction1.istenerO(publicvoidactionPer-Formed(ActionEvente)m=Double.prseDouble(tl.getTe×t().trim();n=Double.parSeDOUble(t2.getText().trim();if(n>=0)k=mn;t3.setText(",+k);)elset3.setText("Error!(除数不能为0!)"););add(tl);add(t2);add(t3);add(bl);add(b2);add(b3);add(b4);试验结果:试验九异样处理、线程限制一、试验目的和要求驾驭Java中异样处理、多线程限制程序编程方法。要求至少完成试验内容巡的70%。二、试验内容I.编写一个程序,在其中写一个随机数发生类,它能生成O-100之间的随机整数,在主方法中运用随机数发生类对缴生成一些随机数,要求当生成的随机数大于60时定义一个用户定义异样类对型并抛出该对象>代码实现:importjava.util.Random;publicclassMyjavalpublicstaticvoidmain(Stringargs)tryRandomrandom=newRandom();intr=rando11.nextlnt(100);System.out.println(r);Exceptionae=newEXCePtion("生成的Kf机数大于60!");if(r>60)throwae;catch(Exceptione)(e.printStackTrace();试验结果:&Javadoc聆DeclarationQConsole23<terminated>Myjava1(7)JavaApplicationD:eclipsejrebinjavaw.exe(2015,87java.lang.Exception:生成的随机数大于60!at实物九.Myjavalmain(Nyjava1.java:11)JavadocOedarationConsole23terminatedMyjava1J7)(JavaApplicationDzeclisejrebin>javaw.exe(2015272 .编写一个多线程程序,在其中实现两个定时线程,一个线程每隔I秒显示一次秒数,另一个每隔3秒显示一次字母(a,b,代码实现:publicclassMyjava2publicstaticvoidmain(Stringargs)Secondsseconds=newSeconds();Wordswords=newWords();seconds.start();words.start();)classSecondsextendsThreadpublicvoidrun()tryfor(inti=0;i<60;i+)System.out.print(i+"");Thread.s1.eep(1000);)catch(Exceptione)System.out.printIn(e.toString();)classWordsextendsThreadpublicvoidrun()tryfor(intk三65jk<91jk+)Thread.s1.eep(3000);SyStem.out.Println(Char)k);catch(Exceptione)System.out.println(e.toString();)试验结果:GJeivadoc电DedarItionConsole区0123A45B678C91011D121314E151617F181920G212223H3 .编写-程序,在其中定义个线程类ABC它能够实现下面三种功能之:1)每隔I秒显示一次秒数:2)每隔2秒显示一个字母(A.B,.):3)每隔3秒显示一个字母(H,I,)。构造方法有二个整型参数:m.n,m确定时间间隔(也是由它确定要实现的功能),n确定输出的字符的个数。在主方法中建立三个线程对象:Al、A2、A3,分别设置它们的优先级为:4,6,8,最终启动这三个线程,输出110、AE、HK,请视察运行结果.代码实现:publicclassMyjava3publicstaticvoidmain(Stringargs)ABCAl=newABC(l,l);ABCA2=newABC(2,5);ABCA3=newABC(3,4);Al.setPriority(4);A2.setPriority(6);A3.setPriority(8);Al.start();A2.start();A3.start();)classABCextendsThreadintm=0,n=0;publicABC(intm,intn)this.m=m;this.n=n;publicvoidrun()try(switch(m)case 1:for(inti=l;i<=n;i+)System.out.print(i+"");Thread.steep(m*100);)break;case 2:for(intk=65;k<n+6S;k+)System.out.print(char)k+"");Thread.s1.eep(m*1000);)break;case 3:for(intj=72;j<n+72;j+)(System.out.print(char)j+"");Thread.steep(m*1000);)break;)catch(E×ceptione)System.out.println(e.tostring();试验结果:何Javado<:>DeclarationSConsole区<terminated»Myjava3(6)JavaApplicationD:edipsejrebinavaw.exe(2015年1月9日下午1:33:15)A1H2B3I4C563D78E9K104,编写个APPIeI(或JAPPlet),Applet窗体宽300,高100,布局管理器为null.窗体上有一个标签和一个按钮,标签的位置是(10.20),按钮的位置是(100.60),它们的宽度和高度都是80和20。再编写一个线程,该线程可以让标签向右移动10次,每次移动IO个单位,间隔I秒,通过按钮的动作事务启动上述线程.界面如下图所示。代码实现:importjava.awt.*;importjava.awt.event.*;importjava.applet.*;publicclassMytaVa4extendsAppletimplementsRunnablestatic1.abell=newIabe1("向右移标冬!”);Buttonb=newBUttOn("启动");staticintx=10;staticThreadnove=newThread(newMyjava4();publicvoidinit()set1.ayout(null);SetSiZe(300,I。);add(b);add(t);l.setBounds(10,2,80,20);b.SetBoundS(100,6,80,20);b.addAction1.istener(newAction1.istenerOpublicvoidactionPerformed(ActIonEvente)wjve.start(););)publicvoidrun()try(for(inti=0ji<10ji+)x=x+10;t.SetBounds(x,2,80,20);Thread.steep(1000);)catch(E×ceptione)System.out.println(e.toString();)试验结果:5.编写一个图形用户界面程序,窗体的宽度300,高度150,布局管理器为null,窗体上仃二个标签和二个按钮,标签的位置为(10.30)和(200.60),按钮的位身为(50.1(三)和(150,100),它们的宽度和高度都是80和20。编写一个线程,该线程可以让标签向右或向左移动IO次,每次移动IO个单位,间隔1秒,通过按钮的动作事务后动上述线程,“向右走”按钮启动“向右移标签”,“向左走”按钮启动“向左

    注意事项

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

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




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开