java第一次实验报告_第1页
java第一次实验报告_第2页
java第一次实验报告_第3页
java第一次实验报告_第4页
java第一次实验报告_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、甘肃政法学院本科生实验报告( 类与对象,继承与接口 )姓名 :学院 :专业 : 信息管理与信息系统本科班班级 :10 级信管班实验课程名称:Java 面向对象程序设计实验日期: 2010 年 4 月 3 日指导教师及职称: 李瑞生实验成绩:开课时间: 2010-2011 学年 第二 学期甘肃政法学院实验管理中心印制实验题目 类与对象,继承与接口小组合作 否姓名r»卜。级信管学号班一、实验目的1、熟悉Java面向对象程序设计的基本思想。2、掌握类与对象的定义及使用方法。3、掌握packages句与import语句的用法。4、掌握java继承中父类及其子类的定义方法。5、掌握子类重写父类

2、同名方法的方法。6、掌握接口的用法。二.实验环境实验室网络环境三、实验内容与步骤1、三角形、梯形和圆形的类封装:分别定义三角形、梯形和圆形类, 要求每个类中包含构造方法、求周长及面积的方法。最后在主方法中 为三角形、梯形和圆形类创建对象并打印输出各种图形的周长及面 积。该程序的模板代码如下:请将其补充完整并调试运行。2、学习实例成员与类成员的区别:按照下面模板代码中的注释信息 将该程序补充完整并调试运行。3、使用packaged句与import语句:上机调试下面程序,学会package 与import语句的用法。4、请按模板要求,将【代码】替换为 Java®序代码。5、定义父类 Pe

3、ople,分别定义 People类的子类 ChinaPeopH AmericanPeopl解口 BeijingPeople并分别重写父类中的各个方法。最后 在主方法中分别创建各子类的对象并调用各自的方法打印输出信息。该程序的模板代码如下:请将其补充完整并调试运行。6、读懂下面模板代码,按要求补充程序并调试运行。掌握抽象类的 定义及其实现方法,学习上转型对象的运用方法。7、读懂下面模板代码,按要求补充程序并调试运行。掌握接口的定 义及其实现方法,学习接口回调的运用方法。四、实验过程与分析1.三角形、梯形和圆形的类封装:分别定义三角形、梯形和圆形类,要求每个类中包含构造方法、求周长及面积的方法。最

4、后在主方法中为三角形、梯形和圆形类创建对象并打印输出各种图形的周 长及面积。该程序的模板代码如下:请将其补充完并调试运行。|J; Lade河a|J Trnglejav-i 山 Circledj ij AfeaArdLength.Jvapackage exercise;234 o68class Circledouble radius, area:Circle(double r)radius=r;/方法体double getAreaOdouble Area=3. 14+radius*radius; return Area;方法体,要求计算出a 一”返回 double getLengthOdoubl

5、e Length= 3.14*2*radius;return Length; /getArea方法体的代码,要求计算山length返回void setRadius(double newRadius)r ad i u s =n ewRad i u s;9QZ ArAndlength.javaE le&f 加 H Mg 峭” 口 XGrclve123456package exercise:class Trangledouble sideA, sideB, sideC, area, length;boolean7 publicboo:Trangle(double a, double b, d

6、ouble c)8910111213141516171819202b、一sideA=asideB-bsideC-c/ 渗数a, b, c分别赋值给sideA, sideB, s ideCif (sideA-sideBsideCR&sidpA-sideOsideB) /a, b> c掏成三角形的条件表达式( boo=true: 给boo版值。elseboo=false:/ /给 boo 赋值。)double getLengthO(Jj Ladvrjmr« , Imy -jjve . P L .jw | 力 AEAwfcnjftJaM23242526,27282930313

7、233343536373839|404124344double Length=sideA+sideB-sideC:return Length:方法体.要求讦算出length的值并返回 )public double get Area。if(boo)double p二(sideA+sideB-sideC) 2. 0:area=Math. sqrt(p*(p-sideA)* (p-sideB)*(p-sideC): return area:)elseSy stem.也print In ("不是一个三角形,不能计算却积"): return 0:)public void setABC

8、(double a, double b, double c)sideA=a;sideB=b:sideC二c: 参数a, b, c分别赋值给sideA, sideB, sideCelseSystem. out. print In ("不是一个三年形,不能计算面枳"): return 0;). .public void set ABC (double a, double b, double c) fsideA=a;sideB=b:deC二c: 参数a, b, c分别赋值给sideA, sideB, sideCif (si deA+s i deB>s i deC&&

9、amp; s i deA-s i deC>s i deB) /a, b, c 构成三角形的条件表达 Xbootruc: / '给boo赋值匕elseboo=fal se; /给booffit值。)Lhder.jirvA t -£J TMAgl芒拙”7j CtrElejm 山 AreHUML/n父hjm(1 package exercise:34567890class Lader (double &bove> bottom, height, area;Lader (double a, double b, double h) (above=s;bottonFb

10、;八所助卜阮方法体,将参数5b, g分别赋值给日bov£, bmto叫heightn|12doublegetArea()113(|14 (kidblf;虹巳0=31»¥的1>0门0111)*卜式曲“2:方法体.,要求tt算出“小日返回|15returnArea;|1617 1819运行结果如下图所示:力fimsa窗,、 引,mixQ? m-vnprnf*J irtflAnc. efgth waJJ Lfldt-TijjwflJ Tt4nglr |e4.帆F皿理,.;1的 rKJUirfj.r '产中,M rtjrr - 好->gfF 丁少 -*

11、j jlWijar - C .-rji F -k* ictjar -prr ri 一 山 1 chjjif - c 3rr - - I Fil dgnq |gr ' -5 j »n - -的 iMalrdwtar - r-p n.= ,i«-J SUEMUJ?<nidb j" Ur口 6* 5UEF<.pii|a一 " r=. ! supkrslLjai"''1 l国&tjm8岛 团由即nArdLaghhm3 pub 1 ic cla.ss AiaAndLengl b4 (; public stati

12、c void main (String args.)K 6double length, area;Circle circlt?=nu11:9Transit trangle;110Lacier lader;> 11circle=ne* Circle(10j :,2.W工2trangl?=new Trangle(3,t5);2 烹页:装口 "": i给ea值ar|L3lader=itev Lader(lp2t 1;1.,创建对一!l I lensthFcircle< getLength0 ;cire 1 种同用方法返回盾工斗15System out. println

13、(*alffiHK t-+lenjth)iareirclf. getAreaO :£ ire 12调用方法返回面积并布值蛤at5J17System, out, print In ("国的面积:"-area):lengthFtrangle. eetLength();.U.匕;.周田方夫返回周长并甄,;19System 此 Rrintlii二角尼的闰 K; "+lerigth); _629area=tran«lek getAreaOtiMglc调用方法返回面积;_!1System, out,虹intln二角/的面机:"+area);are

14、a=lade r. get Area 0 ;laid洁用方法返回面积并赋值给areeg二iSy£tgBL也匕国1111(*梯形的囿积:匕.M);£;_' Itrans le . setABCd2, 34, 1); 3 IraMlfi词再方法设置三个边. ET.E=tT.niH jD 1tt司ntxl TMFFi万i去彳后B面)干桂)甫1次 -'& Jmdoc吗 E S 懵蚓修 筮*号位* AmAndlflnfli QvmsOV|rgni:2 jl4-2-2 L 下1EFJ营口 口圆阈店长:6工前000优网0Mo04 罚的面积:3110三隹形地目长:工

15、?,0三谓瓶的面料:6: 0IJ/2、学习实例成员与类成员的区别:按照下面模板代码中的注释信息将该程序补充完整并调试运行。float a;static float b*/声明一个fl 口司t型实例变量a声明一个flo3t型类变量风即static变量匕void setA(-float a)thisa=aj/将参数m的值赋值给成员变量m)void setB(float b)(this > i?=lbj)/将手数b的值瞰值给成员变量bA.b=100;A.inputByi A cat=new/通过类名操作类变量b,并赋值ie。通过类名调用方法inputB()A。;A dog=new A(); e

16、atse+A(200); cat,setB(400);dog< setA(150); dog.setB(300);cat * inputA(); cat inputB();dog.inputA(); doginputS();/e名七象调用方法setA(土健 名)需 cat调用方法£otB(int b)将cat的口 dcg象调用方法setA(±rrt a)将dogtl /set B(int b)#dogM / / c at 调用 input A ( ) 台/cat 调用 jjipwtB()./dog 调用 inputA()-/dogffl InputB()o运行结果如下

17、图所示:几 何器国 人斓oc鸣声明 里控制合曰第I卜a Example Java成髭程序C:Prc3卬口0。.0290,0330.0150.0360.0150-6300(03、使用packaged句与import语句:上机调试下面程序,学会package与import语句的用法。package sy;public class SquareEquation double dj b> cjdouble rootl> root?;boolean boo;public SquareEquation(double adouble b>double c)(this.a=ajthis.b=

18、b;thi5,c=c:if(a 1=0) bootruej else (boo=false; public void getRoots() (if(baa) (System.out. printin ("是一元2次方程”);double diskb*b 4*n*c;if(di5k>=0)rootl-CbtM日 th.sqrt(di5k)/(2%);root2=(-b-Math,s9rt(disk)/(2*a);Systemprintf 方程的标:%f »%fn", rootle root 2);) else口 System . out.printf (&qu

19、ot;方程没育实根rT);else System, out.println("不是一元2次方程");)public void sptroefficipntfdouble a>double b,double r)(this.d=djthis.b-b;this.c=c;if(al=0)( boo=true;else(bo。二false;class SunRise(public static void main(String args)(SquareEquation equation=new SquareEquation(4,51)5 equation.getRoots()

20、;equation,SAtCoefficient(-3j4,5);equation»getRoots();运行结果如下图所示:jft问题® Javadoc便声明日控制台 丁、|SunRise JavaC:Progr3m FilesVavajr6t>injavpawHexe- C 2014-S方程的根:-0.2 50000 - 1 000000是一元2次方程方程的根:-8.7863902.1196334、请按模板要求,将【代码】替换为Java®序代码。public clas£ Tank double sf>eed;,/声明double型支量印e

21、ed.利面.圭忌int bulletAmountj/声明int中克?bulletArK)jnt/*i 国爆理料罩void speedup(int s) $pced-s+5peedj/ /ri> + s( e«Utt®fcspeed)void speedDowntint d) if(speed-d>-0)写 peed=spp 吧 d-d; /l-speed-d'lJllFspetid elsespeed - 0;)void seWull&tAmourtt( irt m) bulletAmount 二 m;int getBuIlctAninunt()

22、 return t>ulletAmoimt;double getSpeedf) return spE?ed;void fire() if (hul, letArrnunt>=1)bulletAnficunt-bu lie t Amount-1; /1! b u 1 letAmou nt - l<Vtb u 1 let Am o u n tSystem . out. print In (“打出一案甩脚');运行结果如下:|tdnkl的炮弹数量;tdnk2的炮弹数量;10tankl目前的速度:80.9tank2目前的速度:90.9nkl目前的速度:65.0tank2目前的

23、速度:60.0tankl开火:打出一发炮强tank2开火,打出一发炮弹打出一发饱强tankl的炮例数量:9tank2的炮鹿数量:85、定义父类 People,分别定义 People类的子类 ChinaPeopH AmericanPeopl解口 BeijingPeople并分别重写父类中的各个方法。最后 在主方法中分别创建各子类的对象并调用各自的方法打印输出信息。该程序的模板代码如下:请将其补充完整并调试运行。private int weight;private int height;public void speakhellaf)(System.out * println (吃了吗?"

24、;); /public void speakHellof ).要不输出类等好,吃了吗.这样的 public void averageHeight()height=173;System,out.lh+height+h,Jl");/里:pu口lie,/“中国人的平均身高,16g. 78厘米"这样的双语信息public void avarageKeight()(w&ight=70SystHM. nut .pint In ("巾国人的平均体重:"+利£ght+"公斤"): /public void averageHeight

25、( )r?±h/要点输出类似“中后大地平均休至;6E公斤”这样的双倍信息public void chinatjongfuf) ( 导” tM.eut.pT力tin(世口钟.聊咏.唾如弓”); 1,揄中二rii甘z.同犷一 小打斗一血如林.旺方三”里 |ja ChiiaPeople.jarvaJ E eijifig -eopl aifia2 © Esa mpleJavaprivate int height;private int weight;- public void speakHello() (System, out . printing喻好"); /publi

26、c void speakHello(要柳出类做"蚓产'这祥的双ISIMMdpublic void averageHeight()( height=173;ISystem.""土.priiYtln("平均身高悬:M4-height+"lf5|c,r);)/王写public void averageHeight()A±*public void averageweight()( waight=70;System, out ,pd(“平熔体量是:"“£ght+"公斤"); /重写public v

27、oid averageweight(public void beijingOpera() (System, out. printlnf NJh*);/一出京剧的信息ChirBiPMpleJflWig j Amwica心匕期值/酬也_public class AmericanPeople extends People-(d public void speakH«llo()tSystem. out»println(''Hew do you do? " ) 5/,重弓public void speakHello( )T7i±.尊木辐hf,美帆/

28、*fHow do you do”立畔的英语信息.- public void aerageHeight()(height=173;Systemut > println("American average height is : "+height); /±public void averageHeight (“ public void averageweight()(vieight = 70;System.out *println("American average weight is; ,+L7eight);)_/至与public void aver

29、ageweight ( )17 public void mericanBoxingC)(Syst em. out. printin ( ",勾拳”);轴出拳击的信圾 例如“宜拳'"钩堂"等 偃问舞 Javadcc声明.日控制自Example JavaF:birjavaw.ejte (2014-5-21 下午&O&56 5w?吃了吗?How do you do?您好中国人的平均身高:17 3厘米American average height is:173 tQ平均身高是:17 3厘米中国人的平均体重:7公斤American average w

30、eight is:79.6平均体重是:7g公斤坐加钟站如机睡如弓直拳勾拳京剧坐如钟站如松,睡如弓6、读懂下面模板代码,按要求补充程序并调试运行。掌握抽象类的 定义及其实现方法,学习上转型对象的运用方法。abstract class Employee(public abstract double earnings();)class YearWorker extends Employeepublic double earnings()return 50000.456; 重写earnings ()方法class Monthworker extends Employee(public double earnings()(return 12*2300;/重写earnings ()方法。class WeekWorker extends Employeepublic double earnings()return 52*500; 重写earnings。方法。cla$s CompanyEmployee employee double

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论