- 8
- 0
- 约2.18万字
- 约 18页
- 2016-12-21 发布于重庆
- 举报
第五章 隐藏具体实现
在面向对象设计中,要考虑的一个基本问题是“如何将变动的事物与保持不变的事物相互隔
离”。这对程序库(library)而言尤为重要。该程序库的使用者(客户端程序员,client
programmer)必须能够信赖他所使用的那部分程序库,并且能够知道如果程序库出现了
新版本,他们并不需要改写代码。从另一个方面来说,程序库的开发者必须有权限进行修改
和改进,并确保客户代码不会因为这些改动而受到影响。
这一目标可以通过达成协定来加以实现。例如,程序库开发者必须同意在改动程序库中的
class时不得删除任何现有方法,因为那样会破坏客户端程序员的代码。但是,与之相反的
情况会更加棘手。在有域存在的情况下,程序库开发者要怎样才能知道究竟都有哪些域已经
被客户端程序员所调用了呢?这对于方法仅为类的实现的一部分,因此并不想让客户端程序
员直接使用的情况来说同样如此。但如果程序开发者想要移除旧的实现而要添加新的实现
时,结果将会怎样呢?改动任何一个成员都有可能破坏客户端程序员的代码。于是程序库开
发者会手脚被缚,无法对任何事物进行改动。
为了解决这一问题,Java提供了访问权限修饰词(access specifier)供程序库开发人员来
向客户端程序员指明哪些是可用的,哪些是不可用的。访问权限控制的等级,从最大权限到
最小权限依次为:public, protect
您可能关注的文档
最近下载
- 坚持与拼搏:体育精神的传承主题班会.pptx VIP
- 11880.11-2024《柴油机 选择性催化还原(SCR)系统 第11部分:尿素结晶试验方法》.docx
- 镀锌钢管质量检验报告.pdf VIP
- 急性上消化道出血观察和护理要点.pptx VIP
- 人教PEP版四年级英语下册期中达标检测卷(含答案,含听力原文).doc VIP
- 《温室气体 产品碳足迹量化方法与要求 氯碱产品》.pdf VIP
- 星海音乐学院附中高一语文试卷.docx VIP
- 2025秋粤教粤科版二年级上册科学第二单元试卷附答案 .pdf VIP
- 期中检测(试题)-2024-2025学年人教PEP版英语四年级下册(含答案,含听力原文,无音频).pdf VIP
- 深圳市福田区二模理化合卷.pdf VIP
原创力文档

文档评论(0)