- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Chapter04_Defining Classes
面向对象程序设计(Object-Oriented Programming with Java)
Chapter 4 类的定义
(Defining Your Own Classes)
Chapter 4 Defining Classes
Key Points:
Abstract(抽象)
Encapsulation(封装)
Class的定义与使用
构造方法
信息隐藏和修饰符
Objectives:
理解OOP的两个重要特性(抽象和封装)的概念,掌握它们在Java中的实现和Class的定义和使用。
2017-3-29
Copyright DHU 2012
4-1
4.1 Abstract and Encapsulation
Abstract:忽略与系统目标无关的问题域(Problem Domain),从而集中于当前系统目标有关的问题域的机制。
忽略枝节、直取实质
软件开发方法中的抽象:
过程抽象
数据抽象
2017-3-29
Copyright DHU 2012
4-2
Two Kinds of Abstract
过程抽象
将整个系统的功能划分为若干部分,强调功能完成的过程和步骤。
有利于控制、降低整个程序的复杂度,但是自由度比较大,难以规范化和标准化,操作起来有一定难度,在质量上不易保证。
2017-3-29
Copyright DHU 2012
4-3
Two Kinds of Abstract
数据抽象
把事物的状态和行为的抽象结合在一起;
可以去除与核心问题无关的细枝末节,使开发工作可以集中在比较关键、主要的部分;
对数据和操作的分析、辨别和定义可以帮助开发人员对整个问题有更深入、准确的认识;
得到的抽象数据类型是进一步设计、编程的基础和依据。
2017-3-29
Copyright DHU 2012
4-4
Data Abstract
OO方法在实际中讨论的最具体的东西是实体(entity),OO的抽象分析从一开始就把重点放在寻找实际应用中最小的单位--实体(对象);
首先讨论一个个实体的状态和行为,然后再逐步抽象,形成类及其之间的关系(包含、继承和关联),逐步形成模块,最后形成整个系统。
2017-3-29
Copyright DHU 2012
4-5
Data Abstract
特点
集中处理关键、主要问题;
对问题的认识更深入、准确;
便于从分析到设计、实施的过渡;
利于程序的模块化、标准化和部件化;
更符合人们的一般思维方式和规律;
e. g.
订单处理问题--核心问题就是产品及与其相关的数量、金额的处理。
2017-3-29
Copyright DHU 2012
4-6
Encapsulation
封装又称为信息屏蔽(Information Hiding),将对象的数据和基于数据的操作封装再一起,数据被保护在对象的内部,对象外部只能通过接口进行经过授权的操作;
2017-3-29
Copyright DHU 2012
4-7
Encapsulation
目的
将设计者和使用者分离开来;
维护局部化;
定义
一个清楚的边界;
一个接口;
受保护的内部实现;
优点
提高可维护性和可重用性。
2017-3-29
Copyright DHU 2012
e.g. CPU(封装的芯片)
User:引脚的个数、电气特性等。
4-8
Encapsulation
It cannot be stressed enough that the key to making encapsulation work is to have methods never directly access instance fields in a class other than their own. (e.g.)
Encapsulation is the way to give the object its black box behavior, which is the key to reuse and reliability.
2017-3-29
Copyright DHU 2012
4-9
Encapsulation
Levels of encapsulation
Level-0: raw code, no encapsulation
Level-1: procedure/function
Level-2: class/object
Level-3?
…
Encapsulation in Java: class
2017-3-29
Copyright DHU 2012
4-10
4.2 Java的类
What’s a class?
系统定义的类;
用户自定义类;
创建对象与定义构造方法;
2017-3-29
Copyright DHU 20
您可能关注的文档
最近下载
- GB 45673- 2025《危险化学品企业安全生产标准化通用规范》之“5.7 操作安全”审核检查单(2025A0).docx VIP
- 江苏和鼎网架钢结构工程有限责任公司钢结构桁架吊装安装专项施工方案.doc VIP
- (推荐!)GB 45673-2025《危险化学品企业安全生产标准化通用规范》之“5.2 安全生产责任制”审核检查单(2025A0).docx VIP
- 社会秩序维护法-台湾.doc VIP
- 心脏瓣膜病病人的护理.pptx VIP
- 铸锭分厂应急预案.docx VIP
- (推荐!)GB 45673-2025《危险化学品企业安全生产标准化通用规范》之“5.3 安全生产信息与合规审核”审核检查单(2025A0).docx VIP
- GB 45673-2025《危险化学品企业安全生产标准化通用规范》之“5.1安全领导力”审核检查单.pdf VIP
- 第三部分放射治疗练习卷含答案.doc VIP
- 22G101 三维彩色立体图集.docx VIP
原创力文档


文档评论(0)