




文档简介
经典word整理文档,仅参考,双击此处可删除页眉页脚。本资料属于网络整理,如有侵权,请联系删除,谢谢!实验四面向对象基础编程一、实验目的1.掌握类的定义和生成机制2.了解构造函数的作用二、实验要求1.简单类的定义。2.对象创建和使用。3.访问控制修饰符的作用。4.掌握静态属性、方法和初始化器的特点。三、实验内容一.创建对象new构造函数(构造方法参数列表)二.使用修饰符常用的修饰符如下。[public][private][protected][package][static][final][transient][volatile]不同修饰符的访问控制权限如表4.1所示。表4.1三.方法中参数传递的练习在其它语言中,函数调用或过程调用时参数有传值调用和传地址调用之分。在Java中,方法中的参数传递可以分为传值调用或对象方法调用等方式。传值调用即传递的参数是基本数据类型,调用方法时在方法中将不能改变参数的值,1.编写一个传值调用的程序文件TestParamTransfer1.java。(1x和y赋一个初值10调用方式调用方法ff1对x和y做乘方及输出x和y出x和y的乘方值。(2)程序源代码如下。classTestParamTransfer1{publicstaticvoidmain(String[]args){intx=10,y=10;ff1(x,y);System.out.println("x="+x+",y="+y);}staticvoidff1(intpassX,intpassY){passX=passX*passX;passY=passY*passY;System.out.println("passX="+passX+",passY="+passY);}}(3)编译TestParamTransfer1.java,其运行结果如图4.2所示。图4.2(4)分析其运行结果ff1ff1passX和passYx和y的值被传递给这两个参数。尽管在方法中计算了参数的平方,但从ff1方法返回后,参数消失,此时x和y的值仍是初值。2.编写一个调用对象方法的程序文件TestParamTransfer2.java。(1)程序功能:通过调用对象的方法在方法调用后修改了成员变量的值。(2)TestParamTransfer2.java程序源代码如下。classTestParamTransfer1{publicstaticvoidmain(String[]args){Powerp=newPower();p.ff2(10,10);System.out.println("方法调用后x="+p.x+",y="+p.y);}}classPower{intx=10,y=10;voidff2(intpassX,intpassY){System.out.println("初始时x="+x+",y="+y);x=passX*passX;y=passY*passY;System.out.println("方法调用中x="+x+",y="+y);}}(3)编译LX3_6.java,其运行结果如图4.3所示。图4.33.一个Fan有自己的品牌和型号,其功能有startstopspeedstart和stop可以改变Fan的状态status(on/off)speed可以调整Fan级在0123FanpublicclassFan{privateStringband;privateStringtype;privateStringstatus;privateintspeed;publicFan(Stringband,Stringtype,Stringstatus,intspeed){this.band=band;this.type=type;this.status=status;this.speed=speed;}publicStringstart(){returnstatus;}publicStringstop(){returnstatus;}publicvoidspeed(inta){this.speed=a;}publicstaticvoidmain(String[]args){Fant=newFan("ss","dd","off",1);System.out.printf("%s,%s,%b,%d",t.band,t.type,t.status,t.speed);}四、实验作业1、在圆柱体类Cylinder中,利用方法重载来设置成员变量。classCylinder{privatedoubleradius;privateintheight;privatedoublepi=3.14;privateStringcolor;publicdoublesetCylinder(doubler,inth)//重载方法{radius=r;height=h;returnr+h;}publicvoidsetCylinder(Stringstr)//重载方法{color=str;}publicvoidshow(){System.out.println("圆柱的颜色为:"+color);}doublearea(){returnpi*radius*radius;}doublevolume(){returnarea()*height;}}publicclassApp7_3//定义主类{publicstaticvoidmain(String[]args){doubler_h;Cylindervolu=newCylinder();r_h=volu.setCylinder(2.5,5);//设置圆柱的底半径和高volu.setCylinder("红色");//设置圆柱的颜色System.out.println("圆柱底半径和高之和="+r_h);System.out.println("圆柱体体积="+volu.volume());volu.show();}}2、创建圆柱体类Cylinder,并在该类的一个构造方法内调用另一个私有的构造方法。//filename:App7_7.java公共构造方法与私有构造方法classCylinder{//定义类Cylinderprivatedoubleradius;privateintheight;privatedoublepi=3.14;Stringcolor;privateCylinder()//定义私有的构造方法{System.out.println("无参构造方法被调用了");}publicCylinder(doubler,inth,Stringstr)//定义有三个参数的构造方法{this();//在公共构造方法中用this关键字来调用另一构造方法radius=r;height=h;color=str;}publicvoidshow(){System.out.println("圆柱底半径为:"+radius);System.out.println("圆柱体的高为:"+height);System.out.println("圆柱的颜色为:"+color);}doublearea(){returnpi*radius*radius;}doublevolume(){returnarea()*height;}}publicclassApp7_7//主类{publi
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 游戏公司企业文化
- Photoshop平面设计基础 课件 任务5.3 制作旅行社T型广告牌海报
- 住宅租赁安全责任与装修安全协议
- 地质灾害监测测量员聘请与预警协议
- 车辆安全保险理赔处理协议
- 通信材料回购方案
- 住宅小区停车场租赁合同规范范本及停车管理
- 餐饮企业股权转让及品牌推广权合同
- 太仓历史面试题及答案
- 手绘校园面试题及答案
- 《熔化和凝固升华和凝华》
- 天津2023年天津银行信息技术岗招聘黑钻模拟III试题3套含答案详解
- 天津市2021年高考化学一轮复习专题七元素周期律和元素周期表
- 01-TOC约束理论(瓶颈管理)八讲 作业
- 《国家学生体质健康标准》登记卡(高中样表)
- 静脉炎的分级及护理课件
- 折让证明模板
- 培智学生XXX个别化教育手册
- AWG,SWG,BWG线规规格对照表
- 《房屋面积测算技术规程》DGJ32TJ131-2022
- (整理)小学数独游戏校本课程教材.
评论
0/150
提交评论