- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
迪米特法则 广义的迪米特法则 优先考虑将一个类设置成不变类 如string 即使一个类必须是可变类,在给它的属性设置赋值方法的时候也要保持吝啬的态度 尽量降低一个类的访问权限 尽量降低成员的访问权限 迪米特法则 思考 下面的两段代码从迪米特法则的角度考察,哪个更好? 从迪米特法则的角度考察下面的说法 你走你的阳关道,我走我的独木桥 城门失火,殃及池鱼 for(IEnumerator ie=vec.GetEmuerator();vec.MoveNext();) {...} IEnumerator ie=vec.GetEmuerator(); while(vec.MoveNext()){ ...} * 开-闭原则 定义: 一个软件实体应当对扩展开放,对修改关闭 Software entities should be open for extension,but closed for modification. 实现该原则的关键技术: 抽象化 从抽象层导出一个或多个新的具体类可以改变系统的行为,因此系统的设计对扩展是开放的 抽象层预见了所有的可能扩展,因此,在任何扩展情况下都不会改变,这就是对改变的关闭 举例 用面向对象的方式模拟我们回家之后开灯、离开家之后关灯的过程 对象 家 进入操作 离开操作 灯 打开操作 关闭操作 类图描述 public void Enter(){ mLight.Open(); } public void Leave(){ mLight.Close(); } public Light light{ get{ return mLight;} set{ mLight=value;} } public void Open(){ System.Console.WriteLine(“light turnning on...”); } public void Close(){ System.Console.WriteLine(“light turnning off...”); } 测试 public class TestMain{ public static void Main(){ Room room=new Room(); Light light=new Light(); room.light=light; room.entry(); System.Console.WriteLine(“living...”); room.leave(); } } 现在要给房子里加上电视机,程序该怎么改? 类图描述 public void Enter(){ mLight.Open(); mTV.Open(); } public void Leave(){ mLight.Close(); mTV.Close(); } public Light light{ get{ return mLight;} set{ mLight=value;} } public TV tv{...} 随着生活水平不断的提高,还要不停的给家里增加衣柜、计算机... 使用OCP解决代码易维护 Switch预见了所有的具有打开和关闭功能的生活用品 Switch也同时允许所有具有该接口的类扩充到系统中来 Demo:演示这种设计给系统扩充带来的便利 里氏代换原则(LSP) 如果对每一个类型为T1的对象O1,都有类型为T2的对象O2,使得以T1定义的所有程序P在所有的对象O1都代换成O2时,程序P的行为没有变化,那么类型T2就是T1的子类型 反过来的代换是不成立的 只有当子类可以替换掉基类,软件单位的功能不受影响的时候,我们才说基类真正被复用了。 比如有两个类,一个是BASE类,一个是DERIVED类,并且DERIVED类是BASE类的的子类。那么一个方法可以接受一个基类对象b的话: method(Base b) 那么它必然可以接受一个子类对象d 即 method(d) 举例:长方形和正方形 如果正方形是长方形的子类,那么他们之间能满足里氏替换原则吗? 长方形的定义 public class Rectangle{ private long width; private long height; public virtual void setWidth(long width){ this.width=width; } public virtual void setHeight(long height
您可能关注的文档
- 第二章第4讲全球气候变化和气候类型的判断.ppt
- 第二章第一节声调.ppt
- 第二章第5课离骚1.ppt
- 第二章第1讲物质的组成、性质及分 (2)1.ppt
- 第二章第三节实验动物遗传学111.ppt
- 第二章第一节由多种物质组成的空气N.ppt
- 第二章第三节气候旅游资源.ppt
- 第二章第二节不同等级城市的服务功能.ppt
- 第二章第四节语流音变之“啊”的音变.ppt
- 第二章第二节第1课时气候类型多样季风气候显著.ppt
- 湖南省衡阳市第八中学2026届高三上学期第一次月考物理(原卷版).doc
- 浙江省普通高中尖峰联盟2026届高三上学期10月联考英语(原卷版).doc
- 四川省绵阳市南山中学实验学校2026届高三上学期10月月考英语(原卷版).doc
- 湖南省衡阳市第八中学2026届高三上学期第二次月考历史 Word版含解析.doc
- 福建中考物理5年(2021-2025)真题分类汇编:专题09 功和机械能(原卷版).doc
- 福建中考物理5年(2021-2025)真题分类汇编:专题10 内能及其利用(原卷版).doc
- 福建中考物理5年(2021-2025)真题分类汇编:专题07 压强(原卷版).doc
- 福建中考物理5年(2021-2025)真题分类汇编:专题01 机械运动(原卷版).doc
- 福建中考物理5年(2021-2025)真题分类汇编:专题02 声现象(解析版).doc
- 福建中考物理5年(2021-2025)真题分类汇编:专题02 声现象(原卷版).doc
最近下载
- 2024年全球及中国天然超氧化物歧化酶行业头部企业市场占有率及排名调研报告.docx
- 初中英语固定搭配大全.pdf VIP
- 电力系统500kV串补保护的配置及动作逻辑原理详解培训.pptx VIP
- DB42_T 268-2012 蒸压加气混凝土砌块工程技术规程.docx
- 机电设备安装与维修专业人才培养方案.docx VIP
- 成人外周动脉导管留置与维护.pdf VIP
- 四宫格四阶数独学习材料包(完整版)-附带讲解和练习-适合零基础.pdf VIP
- 220kV升压站SVG设备安装.docx VIP
- 汽车灯光系统检修教学能力比赛教案.pdf
- 2023水电工程地下建筑物安全监测技术规范.docx VIP
有哪些信誉好的足球投注网站
文档评论(0)