ImageVerifierCode 换一换
格式:DOCX , 页数:16 ,大小:26.76KB ,
资源ID:8828108      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-8828108.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(Java程序设计试验2学生版.docx)为本站会员(b****6)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

Java程序设计试验2学生版.docx

1、Java程序设计试验2学生版华北电力大学实 验报 告 实验名称 ava程序面向对象设计(一) 课程名称 Java程序设计 专业班级: 学生姓名: 学 号: 成 绩:指导教师: 张学斌 实验日期: 一、实验目的及要求.掌握类的定义。2.掌握成员变量和成员方法的定义。3.掌握构造方法的定义和使用。.掌握类的多态性二、实验环境Wndos2000/WidowXP,JK1.21.6 三、试验内容和步骤要求按照实验内容,写出详细实验过程和步骤,必要时截图。实验1机动车.实验要求编写一个Jva应用程序,该程序有两个类:Veice(用于刻画机动车)和Usr(主类)。具体要求如下:ehcle类有一个oule类型

2、的变量sped,用于刻画机动车的速度,一个int型变量powe,用于刻画机动车的功率。定义了spedUp(t s)方法,体现机动车有加速功能。定义了seedDow()方法,体现机动车有减速功能。定义了sPower(ints),用于设置机动车的功率。定义了geower()方法,用于获取机动车的功率。在主类ser的ia()方法中用Vhle类创建对象,并让该对象调用方法设置功率,演示加速和减速功能。1.2程序模板 Vehiclejavpubl class Vicle 【代码1】/声明dube型变量sped,刻画速度 【代码】/声明int型变量pwe,刻画功率 ispUp(int ) 【代码3】 /将

3、参数的值与成员变量speed的和赋值给成员变量peed voi pdown(int d) 【代码4】/将成员变量sped与参数的差赋值给成员变量spd vod seter(intp) 【代码】 /将参数p的值赋值给成员变量por int ePower() 【代码6】 /返回成员变量owr的值 degetSpeed() retrnspeed; -Uer.javapublic class Usr pulic stt vo main(trin args) hclecr,car; 【代码】 /使用ew运算符和默认的构造方法创建对象ar1 【代码8】 /使用new 运算符和默认的构造方法创建对象car2

4、 ca1.stPoer(128); ar2.tow(7); Sytem.t.println(的功率是:car1.gtPowr(); Sys.u.rintln(ca2的功率是:+c2.gtPer(); 【代码9】 /car1调用seeU方法将自己的seed的值增加80 【代码10】 /ar2调用spdUp方法将自己的speed的值增加80 System.ot.println(cr1目前的速度:ca.getped(); ystem.ot.rtln(2目前的速度:cr2.getSeed(); car1.speeDo(1); rpeedDwn(0); System.ou.rintln(cr1目前的速度

5、:car1gtSpe()); Sste.out.prinln(cr2目前的速度:+ar2.getSp(); 13 实验指导创建一个对象时,成员变量被分配空间,这些内存空间称作该对象的实体或变量,而对象中存放着引用,以确保这些变量被该对象操作使用。空对象不能使用,即不能让一个空对象去调用方法产生行为。假如程序中使用了空对象,在运行时会产生异常:NulPirExeptio,对象时动态地分配实体的,Jva的编译器对空对象不做检查。因此,在编译时要避免使用空对象。1.4实验改进(编写程序,并给出结果)1.改进seedp()方法,使得Vehicl类的对象加速时不能将sp值超过20.2.改进sedDwn(

6、)方法,使得Vce类的对象在减速时不能将spee值小于03.增进一个刹车方法vid brae(),Vehicle类的对象调用它能将sped的值变成01.5 实验结果实验 家中的电视1.实验要求 编写一个Jaa应用程序,模拟家庭买一台电视,即家庭将电视作为自己的一个成员,即通过调用一个方法将某个电视的引用传递给自己的电视成员。具体要求如下:有三个源文件,其中TV.jav中的TV类负责创建“电视”对象。Fiy.ja中的Famiy类负责创建“家庭”对象,Mnass.jva是主类。在主类的min()方法中首先使用TV类创建一个对象haeTV,然后使用Fal类再创建一个对象hangsanamily,并将

7、先前TV类的实例heTV的引用传递给zhangsanamil对象的成员变量homeTV。2.程序模板V.jaapublic ls nt channe; /电视频道 oi sehanel(i m) (m1) hannel=m; in getChann() return chane; voi owPoa() swith(channel) s 1 : Systm.out.pritln(综合频道); rea; ase2 : ystem.ut.prntl(经济频道); brek; ase : Sye.ut.ritln(文艺频道); bea; cse 4 : Sytm.out.rintln(国际频道);

8、reak; case 5 : Sstemouprntl(体育频道); bek; defult : Sy.out.rintl(不能收看+chanl+频道); -Fmilyjavaublic clss mily V homeV; oid buyTV(TV t) 【代码1】 /将参数t赋值给homeTV vo reoteControl(int m) hoeV.stChanne(); voi seeV() hmV.shoroa(); /hmeTV调用showProam()方法 -MainClass.javpbi clas MainClass pbi saticvoid ai(rng args) V h

9、aierTV =new TV(); 【代码2】 /hierT调用setChanne(it),并向参数m传递 stmo.ritln(aerTV的频道是aTVgetChanne(); Famiy zhSanaily new Faily(); 【代码】/zhngSanFamily调用oid buT(TV t)方法,并将hierTV传递给参数TV Syse.out.prtln(zhangSanFamil开始看电视节目); zhanSnFmiy.seeTV(); nt m=2; Systm.outpin(hagSanFamy将电视更换到+频道); zangSanFail.reoteonro(m); Sy

10、stemou.printn(haerTV的频道是haieTVethael()); ysemot.printl(hnganFamily再看电视节目); zhangSFamilyseeV(); 3.实验结果实验3 共饮同井水.实验要求 编写程序模拟两个村庄共用一口水井。编写一个Villag类,该类有一个静态的int型成员变量wateAmount,用于模拟井水的水量。在主类and的main()方法中创建两个村庄,一个村庄改变了wtrAmut的值,另一个村庄查看wtermunt的值。2.程序模板llag.avapbcca Villge stac nt wateAmnt; /模拟水井的水量 int pe

11、peNumbe; 村庄的人数 Sting name; /村庄的名字 Villge(Sng s) name = s; stc voi tWaterAout(in m) if(m0) wterAmoun = m; oiddrinkaer(n n) f( waterAmntn=) watermunt =aterAoutn; Sysem.out.pritln(na+喝了升水); ese wateAmount 0; ticin lookaeAmount() reurn ateAmount; void sePeopleNumber(intn) peopleNber= ; n gtPeoplNber() r

12、eturpopleNbe; -LandjvapuiccassLad pubicstic vidmin(Stigargs) 【代码1】/用类名调用setWaterAmon(int ),并向参数传值20 i lftWter =【代码2】 /用Vllae类的类名访问watAmunt Sytemout.printn(水井中有 +eftWater+ 升水); Vllag hohuan,mJiaHeZh; zhaZhung = new Viag(赵庄); maJiaHeZhi = new Vllag(马家河子); zhohuan.sePeoeumer(80); maJiHZhisetPepleumber(

13、20); 【代码3】/zhaoZhag调用drinkatr(int ),并向参数传值50 eftWat 【代码】/aJaHehi调用lookatermount()方法 StngnamemJiaHZh.na; sem.out.pintln(name+发现水井中有 leftWater+升水); maJiaHeZhi.drinkWter(10); efWatr = 【代码5】/zhaZhng调用lookWatrmot()方法 nae=zhoZuang.name; yste.ou.prntn(name发现水井中有lefWte+ 升水); n peoplNumbr = zaoZhuangetPopleN

14、umber(); Sstemou.rintl(赵庄的人口:+ppeNuer); peplNumber = maiaHeZhigeteopleNber(); Syst.utprintl(马家河子的人口:+popeumber); .实验指导当jaa程序执行时,类的字节码文件被加载到内存,如果该类没有创建对象,类的实例变量就不会被分配内存。但是,类的类变量,在该类被加载到内存时,就分配了相应的内存变量。如果该类创建对象,那么不同对象的实例变量互不相同,即分配不同的内存空间,而类变量不再重新分配内存,所有对象共享类变量。当类的字节码文件被加载到内存时,类的实例方法不会被分配入口地址,只有当该类创建对象

15、后,类中的实例方法才分配入口地址。当使用ew运算符和构造方法创建对象时,首先分配成员变量给对象,同时实例方法必须分配入口地址,然后再执行构造方法中的语句,完成必要的初始化。因而实例方法必须由对象调用执行。需要注意的是,当创建第一个对象时,类中的实例方法就分配了入口地址,当再创建对象时,不再分配入口地址,也就是说,方法的入口地址被所有的对象共享。对于类中的类方法,在该类被加载到内存时,就分配了相应的入口地址,即使该类没有创建对象,也可以直接通过类名调用类方法。4.扩展练习(1) 【代码3】是否可以是Vlag.drnkWater(50);,为什么?(2) 【代码4】是否可以是Villglokter

16、nt();,为什么?(3)Land类main()方法中倒数第2行代码是否可以更改为: peoleumber = Vlge.gPopNumber(); 为什么?5.实验结果实验求方程的根1.实验要求按照实验要求使用packag语句将方程属性即计算根的方法封装在一个有包名的类中,包名是tm.iafi,类的名字是qreEuan。编写一个SunRise的主类,该主类使用imp语句引入tm.jiafei包中的SqureEuatin类。.程序模板 模板 将模板1给出的源文件SquaeEqtnjava编译后得到的字节码文件复制到c:/100/t/afi目录中。 SquareEquation.jav paca

17、gom.jii;pblic ass quequti double ,b,c; double oot1,rt; oolea bo; puic quareEquation(doue ,dol b,oule ) this.a=a; this.b; thic=c; if(a!0) oorue; else boo=false; ubi void getots() if(bo) System.ou.prnt(是一元次方程); dble dikb*b-4*ac; f(disk=) ot1(-ath.srt(disk)/(2); root2(-bMat.qrt(dk)/(2*a); Sse.out.rintf

18、(方程的根:%,%fn,rt1,roo2); e Sysem.trint(方程没有实根n); lse Systeot.prtn(不是一元2次方程); blicvoid sCficent(ul a,doule b,do ) his.a; this.b=b; thisc=c; f(!=0) boo=tue; ee bo=alse; 模板2 1.设置lspath。假设本地JD的安装目录是:D:dk.6。在命令行执行如下命令:set lasspah = D:jd1.6elirt.jar;.;:1000;或 右击“我的电脑”-属性系统特性-高级选项-环境变量 ,将lasspat的值改为lassat =

19、:1.6jrelibr.jar;.;c:000;.将模板2给出的av源程序SunRie.jaa保存到D:200中。 SunRise.java import m.jiafei.;publi cas SunRie uli stic voi main(Sing ars) qurequatin eaion=newSquarquation(4,5,); eutio.getots(); equti.tCofiient(-3,4,5); quaion.getRots(); 3实验指导如果使用impot语句引入了整个包中的类,那么可能会增加编译时间。但绝不会影响程序运行的性能。Ja运行平台由所需要的Jaa类库

20、和虚拟机组成,这些类库被包含在一个jelib中的压缩文件中,当程序执行时,Java运行平台从类库中加载程序真正使用的类字节码到内存。可以使用mpr语言引入自定义包中的类,但必须在lapath中指明包的位置。实验5 实例成员和类成员1.实验要求 掌握实例成员和类成员的使用方法2.程序模板 amleavclass A 【代码】 /声明一个float型实例变量a 【代码2】 /声明一个float型类变量b,即sti变量b id st(oa ) 【代码】 /将参数a的值赋值给成员变量 v set(foat ) 【代码4】 /将参数b的值赋值给成员变量b lotet() rturna; foat tB(

21、) retrb; vid inptA() Syst.ouprint(a); sta voi inptB() Sytmot.rinln(b); public clss xmple pulc sttioid ain(Sringrg) 【代码5】 /通过类名操作类变量b,并赋值100 【代码6】 /通过类名调用方法iputB() A ct=new (); A g=ne A(); 【代码7】 /cat象调用方法st(i a)将cat的成员a的值设置为200 【代码8】 a调用方法stB(nt b)将cat的成员b的值设置为40 【代码9】 /dog象调用方法setA(int a)将og的成员a的值设置

22、为150 【代码10】 /dog调用方法seB(nt )将do的成员的值设置为30 【代码11】 /cat调用inut()。 【代码12】 /c调用ipu()。 【代码1】 /do调用inputA()。 【代码14】 /d调用ntB()。 实验6 银行账户1.实验要求 声明银行账户类,成员变量包括账号、储户姓名、开户时间、身份证号码、存款余额等信息,成员方法包括开户、存款、取款、查询(余额、明细)、销户等操作。pbliclasccoun prvateString acctNumbe; riate StngcustoerName;pivate tring acctOpenTime; priva Sring csmrIdNum; prvate ouleblance; puliccont(tig accunNumber)saNumr = acoutnNer; bi Accout oeAcot(Srg acouNumbr) rtunnew

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2