- 7
- 0
- 约7.3千字
- 约 36页
- 2016-11-28 发布于河南
- 举报
ch07 - 对象和类
关于构造函数的访问控制 大多数情况下,构造函数应该是公有的(为什么?) 有些特殊场合,可能会防止用户创建类的实例,这可以通过将构造函数声明为私有的来实现。 例如,Math类的构造函数为私有的,所有的数据域和方法都是静态的,可以通过类名直接访问而无需实例化Math对象。 private Math(){ } 数据域的封装 v1/Circle.java中的数据域radius是公有的,因此该类的用户(client)可以直接修改圆的半径,如 Circle c = new Circle(); c.radius = 100.0; 但这不是好的实现方法,原因是无法控制该类用户的行为,例如某个程序员可能会写出如下代码: Circle c = new Circle(); c.radius = -100.0; 为了避免直接修改属性,应该将属性域设为私有的;同时提供属性的getter(读取器)和setter(设置器)。这称为数据域封装(ecapsulation) 类抽象 第5章学习了方法抽象。用户只要知道方法签名就可以调用而不必知道方法的实现细节。 类抽象是刚高层次的抽象,就是将类的实现和使用分离。类的创造者提供了类的描述(比如用UML,API文档),让使用者明白如何使用类。 从类的外部可以访问的方法和数据域的全体+如何使用的描述,称为类的合约(contract) this关键字 this
您可能关注的文档
最近下载
- 地下管线普查方案.doc VIP
- 2026年外包公司软件测试工程师面试全解析.docx VIP
- 2024版光伏工程施工工艺手册.pdf VIP
- 母婴保健技术服务许可证校验申请书.doc VIP
- 集团公司供应商管理办法.docx VIP
- 压力式膜技术手册(Memcor).pdf VIP
- 初中英语1600词新课标词汇(按话题分类).docx VIP
- DL∕T电力企业标准化工作指南(2024).pdf VIP
- 2024年供水公司安全生产“一岗双责”实施方案(三篇) .pdf VIP
- Unit1 Art Reading for writing【知识精研】英语人教版(2019) 选择性必修三同步课.pptx VIP
原创力文档

文档评论(0)