电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本
换一换
首页 金锄头文库 > 资源分类 > PPT文档下载
分享到微信 分享到微博 分享到QQ空间

Java 2 —面向对象程序设计 Chapter 7

  • 资源ID:89388613       资源大小:455.50KB        全文页数:42页
  • 资源格式: PPT        下载积分:10金贝
快捷下载 游客一键下载
账号登录下载
微信登录下载
三方登录下载: 微信开放平台登录   支付宝登录   QQ登录  
二维码
微信扫一扫登录
下载资源需要10金贝
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
如填写123,账号就是123,密码也是123。
支付方式: 支付宝    微信支付   
验证码:   换一换

 
账号:
密码:
验证码:   换一换
  忘记密码?
    
1、金锄头文库是“C2C”交易模式,即卖家上传的文档直接由买家下载,本站只是中间服务平台,本站所有文档下载所得的收益全部归上传人(卖家)所有,作为网络服务商,若您的权利被侵害请及时联系右侧客服;
2、如你看到网页展示的文档有jinchutou.com水印,是因预览和防盗链等技术需要对部份页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有jinchutou.com水印标识,下载后原文更清晰;
3、所有的PPT和DOC文档都被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;下载前须认真查看,确认无误后再购买;
4、文档大部份都是可以预览的,金锄头文库作为内容存储提供商,无法对各卖家所售文档的真实性、完整性、准确性以及专业性等问题提供审核和保证,请慎重购买;
5、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据;
6、如果您还有什么不清楚的或需要我们协助,可以点击右侧栏的客服。
下载须知 | 常见问题汇总

Java 2 —面向对象程序设计 Chapter 7

类的基本架构,Chapter 7,7-1 认识类,7-1-1 类的基本概念,类的发展,是为了让程序语言更能清楚地描述出日常生活的事物。,例如:几何形状中常见的长方形(rectangle),问题:,如何利用Java的类来描述长方形,使得它可以保存长方形的信息(宽与高),并且能利用此类计算出面积与周长呢?,在Java中定义一个长方形类: 一般来说,类是由数据成员与函数成员封装而成,数据成员: 每一个长方形,都有宽与高这两个属性,它们就是长方形类的数据成员。,函数成员: 对于长方形类而言,除了宽与高这两个数据之外,还可以计算它的面积与周长。用两个函数来分别完成。Java把它们封装到长方形类里,变成类的函数成员。,说明: Java称这种封装于类内的函数为“方法” 。在传统的程序语言里,计算面积或周长等相关的功能通常可交由独立的函数来处理,但在面向对象程序设计(oop, object oriented programming)里,这些函数被封装在类的内部。,7-1-2 类的声明,要使用类之前,必须先定义它,然后才可利用所定义的类来声明变量,并创建对象。,class 类名称 声明field 数据类型 field名称; .,返回值的数据类型 方法名(参数1,参数2,.) 方法的主体(body) 程序语句 ; return 表达式; ,. ,定义方法的内容,声明field,模仿类定义,定义一个长方形类,class Crrectangle / 定义长方形类,类名为 Crrectangle int width; / 声明数据成员width int height; / 声明数据成员height,int area() / 定义函数成员计算面积 return width*height; int perimeter() / 定义函数成员计算周长 return 2*(width+height); ,定义方法的内容,声明field,7-1-3 创建新的对象,在知道如何定义一个类之后,需要以类为模版,来创建属于该类的对象(object)。,以长方形类为例,从定义类到创建新对象,即:,“先打造一个长方形的模版(定义类),再以此 模版制造长方形(创建对象)”,“由类所创建的对象,即为类的instance”,知道吗?实例( instance)是对象的别名,声明与创建对象的两个步骤 :,1、声明指向“由类所创建的对象”的变量。 2、利用new创建新的对象,并指派给先前所创建的变量。,例如 :,CRectangle rect1; / 声明指向对象的变量rect1 rect1=new CRectangle();,/ 利用new创建新的对象,并让变量rect1指向它,或者将以上两条语句合二为一:,CRectangle rect1= new CRectangle(); / 声明并创建新的对象,并让rect1指向它,访问对象的内容,对象名称特定的field,例如,rect1.width; / 长方形对象rect1的宽 rect1.height; / 长方形对象rect1的高,public static void main(String args) CRectangle rect1; rect1=new CRectangle(); / 创建新的对象 rect1.width=12; / 赋值长方形对象rect1的宽 rect1.height=5; / 赋值长方形对象rect1的高 ,01 / app7_1 创建对象与field的访问 02 class CRectangle / 定义CRectangle类 03 04 int width; / 声明数据成员width 05 int height; / 声明数据成员height 06 07 08 public class app7_1 09 10 public static void main(String args) 11 12 CRectangle rect1; 13 rect1=new CRectangle(); / 创建新的对象,14 15 rect1.width=10; / 赋值长方形rect1的宽 16 rect1.height=5; / 赋值长方形rect1的高 17 18 System.out.println(“width=“+rect1.width); / 输出rect1.width 19 System.out.println(“height=“+rect1.height); / 输出rect1.height 20 21 /* app7-1 OUTPUT- width=10 height=5 -*/,返回值类型 方法名 (类型 参数1, 类型 参数2,.) 程序语句 ; return 表达式; ,7-2 有关方法的使用,7-2-1 定义与使用方法,method 和field一样,都是属于类的成员。field类似传统程序语言里的变量,而方法则类似于程序语言里的函数,只不过OOP的技术把它们封装在类里,形成一个独立的个体。类里的方法可用如下的语法来定义:,方法的主体(body),对象要调用封装在类里的方法时,只要用下列的语法 即可:,对象名称方法名(参数1, 参数2,.),程序app7_3是app7_1的扩展,所不同的是,app7_3在类的定义里加入了area()与perimeter()两个方法。,01 / app7_3, 方法的创建 02 class CRectangle 03 04 int width; 05 int height; 06 int area() /定义函数成员area(), 用来计算面积 07 08 return width*height; 09 10 11 int perimeter() /定义函数成员perimeter(), 用来计算周长 12 13 return 2*(width+height); 14 15 16 17 public class app7_3 18 ,19 public static void main(String args) 20 21 CRectangle rect1; 22 rect1=new CRectangle(); /创建新的对象 23 24 rect1.width=10; /赋值长方形rect1的宽 25 rect1.height=5; / 赋值长方形rect1的高 26 27 System.out.println(“area=“+rect1.area(); 28 System.out.println(“perimeter=“+rect1.perimeter(); 29 30 /* app7-3 OUTPUT- area=50 perimeter=30 -*/,图7-6 方法的运行过程,7-2-3 数据成员的访问方式,在main() 方法内如果需要访问field可通过:,指向对象的变量field名称,radius与pi均为cir1的field,class app public static void main(String args) cir1.radius=2.0; cir1.pi=3.0; ,class CCircle double pi=3.14; double radius; void show_area() System.out.println(“area=“+pi*radius*radius); ,如果是在类声明的内部使用这些field,则可直接 取用field的名称,可直接取用field的名称,this关键字,“this.field名称”。this即代表取用此filed的对象。,在field前面加上this,此时的this即代表取用此一filed的对象,class CCircle double pi=3.14; double radius; void show_area() System.out.println(“area=“+this.pi*this.radius*this.radius); ,7-2-4 在类定义的内部调用方法,在同一个类的定义里面,某一方法仍然可以直接调用其他方法,而不需加上“指向对象的变量名称”,7-3 参数的传递,当方法不需传递任何参数时,方法的括号内什么也不用填,7-3-1 调用方法并传递参数,调用方法并传递参数时,参数是置于方法的括号内来进行传递。括号内的参数可以是数值、字符串,甚至是对象。,01 / app7_7, 调用方法并传递参数 02 class CCircle / 定义类CCircle 03 04 double pi=3.14; / 将数据成员赋值初值 05 double radius; 06 07 void show_area() / show_area() 方法, 显示出 半径及圆面积 08 System.out.println(“radius=“+radius); 09 System.out.println(“area=“+pi*radius*radius); 11 void setRadius(double r) / setRadius() 方法, 可用来赋值半径 12 radius=r;,13 14 15 16 public class app7_7 17 18 public static void main(String args) 19 20 CCircle cir1=new CCircle(); / 声明并创建新的对象 21 cir1.setRadius(2.0); / 赋值cir1的半径为2.0 cir1.show_area(); 23 24 /* app7-7 OUTPUT- radius=2.0 area=12.56 -*/,在app7_7中,第12-14行加入了setRadius() 方法,用来赋值对象的field里的成员radius。因此当执行到第22行调用cir1.setRadius(2.0)时,第12行的setRadius() 方法便会接收传进来的参数2.0 (类型为double),然后在第13行赋值field里的成员radius的值为2.0。离开setRadius() 方法之后,执行第23行,即可显示对象cir1的半径及面积。,r是局部变量,一离开此范围,变量r即属无效,01 / app7_7,调用方法并传递参数 02 class CCircle / 定义类CCircle 03 . 4 void setRadius(double r) 5 radius=r; 6 7 ,7-3-2 传递多个参数,如果要传递两个以上的参数, 只要将所有的参数置于方法的括号内可。,返回值类型 方法名(类型 参数1, 类型 参数2,.) 程序语句 ; re

注意事项

本文(Java 2 —面向对象程序设计 Chapter 7)为本站会员(E****)主动上传,金锄头文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即阅读金锄头文库的“版权提示”【网址:https://www.jinchutou.com/h-59.html】,按提示上传提交保证函及证明材料,经审查核实后我们立即给予删除!

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




关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.