- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《Java程序设计系列讲座-2.ppt《Java程序设计系列讲座-2.ppt《Java程序设计系列讲座-2.ppt
Java程序设计系列讲座-2OOP之封装性
黄绍辉
厦门大学计算机科学系
E-mail: hsh@xmu.edu.cn
Evaluation only.
Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0.
Copyright 2004-2011 Aspose Pty Ltd.
面向对象程序设计基本思想
对象的基本概念
对象是系统中用来描述客观事物的一个实体,它是构成系统的一个基本单位。一个对象由一组属性和对这组属性进行操作的一组服务组成。
对象是问题域或实现域中某些事物的一个抽象,它反映该事物在系统中需要保存的信息和发挥的作用;它是一组属性和有权对这些属性进行操作的一组服务的封装体。
客观世界是由对象和对象之间的联系组成。
Evaluation only.
Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0.
Copyright 2004-2011 Aspose Pty Ltd.
类的基本概念
类是具有相同属性和服务的一组对象的集合。分类的原则是抽象。
在面向对象的编程语言中,类是一个独立的程序单位,它应该有一个类名并包括属性说明和服务说明两个主要部分。
类与对象的关系就如模具和铸件的关系,类的实例化结果就是对象,而对一类对象的抽象就是类。
Evaluation only.
Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0.
Copyright 2004-2011 Aspose Pty Ltd.
关于OOP-Object Oriented Programming
对象是基本编程单位。与此对应,Java使用类(class)表示对象,一个class就是一个类;
对象由一组属性和一组服务两部分组成(两部分不必都存在)。与此对应,Java使用一组成员变量(member variable)表示属性,一组成员函数(member method)表示服务。
Evaluation only.
Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0.
Copyright 2004-2011 Aspose Pty Ltd.
OOP的例子
例如我们要表示一个遥控器对象,它起码有两个属性:外壳,按钮。它起码有两个功能:换台,调音量。使用Java来设计这个对象,它看起来就是这个样子:
class 遥控器 {
外壳成员
按钮成员
换台函数()
调音量函数()
}
Evaluation only.
Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0.
Copyright 2004-2011 Aspose Pty Ltd.
OOP的基本特征
封装性
把对象的属性和服务结合成一个独立的相同单位,并尽可能隐蔽对象的内部细节。
继承性
从一个已有的类来构造新类,除了保留原有的类的特性,还增加了一些新特性。已有的类称为父类superclass,新类称为子类subclass。
多态性
在父类中定义的属性或服务被特殊类继承之后,可以具有不同的数据类型或表现出不同的行为。
Evaluation only.
Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0.
Copyright 2004-2011 Aspose Pty Ltd.
OOP-Part I 封装性
Evaluation only.
Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0.
Copyright 2004-2011 Aspose Pty Ltd.
从C语言开始出发
任务:在程序中实现对时间的一些操作
思路:时间是一个整体,包括时/分/秒,为了在程序中表示一个具体的时间,这三个部份缺一不可。
最自然的,可以采用三个整型变量来存储这三个部份,例如:
int hour;
int minute;
int second;
Evaluation only.
Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0.
Copyright 2004-2011 Aspose Pty Ltd.
C程序示例
void main()
{
int hour,minute,second;
hour=1
文档评论(0)