- 1、本文档共40页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
第三章复合数据类型(一)——类
;教学目标;主要内容:; 为什么需要面向对象?
面向过程方法将实际问题的问题域向计算机过程的转换,往往不存在直接的对应关系。
;对象(object)——现实世界中的一个实体。
我们可以把生活所在的真实世界(RealWorld)当作是由许多大小不同的对象所组成的。对象可以是有生命的个体,比如一个人或一只鸟。;对象也可以是无生命的个体,比如一辆汽车或一台计算机。
对象也可以是一件抽象的事物,如天气或鼠标所产生的事件。;对象的状态和行为
对象具有状态(state)
对象还有行为(behavior)
例如:一个人有他的身高或体重作状态,并有他的行为——如唱歌、打球、骑摩托车、开汽车。一只狗有它的颜色作状态,也有它的行为,如啃骨头或跳跃。
;在程序设计中,软件对象的概念由真实世界对象而来。
状态==变量(variables)或称数据字段(datafield)
行为==方法(methods)
对象实现了状态和行为的结合,使状态和行为封装于对象的统一体中。
;类——是一组具有相同属性特征的对象的抽象描述。
在真实世界里,有许多同“种类”的对象。而这些同“种类”的对象可被归类为一个“类”。例如我们可将世界上所有的汽车归类为汽车类,所有的动物归为动物类。
;汽车类;学生类:
——类对象的属性:
学号
专业
性别
身高
体重
——类对象的功能:
回答学号
回答专业
回答性别
回答身高
回答体重
体重变化
修理电器
开车
;消息是一个对象要求另一个对象实施某项操作的请求。在一条消息中,需要包含消息的接收者和要求接收者执行哪项操作的请求,而并没有说明应该怎样做,具体的操作过程由接收者自行决定。;消息传递是对象之间相互联系的惟一途径。发送者发送消息,接收者通过调用相应的方法响应消息,这个过程被不断地重复,使得应用程序在人的有效控制下运转起来,最终得到相应的结果。可以说,消息是驱动面向对象程序运转的源泉。;单一对象本身并不是很有用处。而通常是成为一???包含许多对象的较大型程序的一个组件时,通过程序中这些对象的交互,程序可以达成更高级的功能以及更复杂的行为,就如汽车自己本身并不会产生行为,而是当你(另一个对象)发动汽车,踩油门(交互)后,汽车内部就发生一连串复杂的行为。
软件对象是通过传送消息给其他对象来达到交互及沟通的作用。如下图所示:;抽象性
封装性
继承性
多态性;抽象——
抽象是解决任何问题所采用的基本策略,是人类认识世界的本能方式。所谓抽象是指从许多事物中,舍弃个别的、非本质的属性,抽取出共同的、本质的属性的过程,它是形成概念的必要手段。
抽象主要包括过程抽象和数据抽象两个部分。;封装——;继承——;多态性——;面向对象程序设计(Object-OrientedProgramming,OOP)方法是指用面向对象的方法指导程序设计的整个过程,所谓面向对象是指以对象为中心,分析、设计及构造应用程序的机制。;
类是组成Java程序的基本要素。
类是具有共同属性和行为的对象的抽象,类可以定义为数据和方法的集合。;类由两部分构成:类声明和类体。
基本格式为:
;类定义中的修饰符含义
public:表示这个类不但能被同一个包中的其它类访问,而且能被其它包中的类访问
缺省情况下,类只能由和它在同一个包中的其它类访问
abstract:表示这个类是抽象类,不能被实例化,也就是说不能定义这个类的对象
final:表示这个类是最终类,它不能有子类。后面会详细讨论父类和子类的关系;类定义中的关键字含义
class类名:表示这是一个类,后面紧接着的就是类的名字。这一项是必需项;
extends父类名:指示它所继承来的类的名称,也就是父类的名称
implements接口名:表示这个类实现一个或多个接口,如果有多个接口,接口名之间应当用逗号隔开;;两个类声明的例子;;例:一个梯形类的定义
classEchelon
{
floatup,down,hight,laderArea;
floatarea()
{
laderArea=(up+down)*hight/2;
returnladerArea;
}
voidchangeup(floath)
{
hight=h;
}
};变量的定义及修饰符;成员变量:
成员变量是属于一个
文档评论(0)