A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 §風過無痕§ 于 2013-8-24 17:36 编辑

如题:面向对象的里氏替换原则和开放封闭原则是什么呀?

4 个回复

倒序浏览
里氏代换 子类出现的位置父类都可以出现 List arr =new ArrayList();

开闭原则 一个类对修改关闭 对扩展开放 就是说你一个类写好了就不能动了 所以在写类的时候要考虑到扩展性和复用型

评分

参与人数 1技术分 +1 收起 理由
赵宗荣 + 1 请抓紧参加入学考试

查看全部评分

回复 使用道具 举报
里氏转换原则:1.子类对象可以直接赋值为父类变量;2.指向子类对象的父类变量,可以强制类型转化为对应的子类对象

评分

参与人数 1技术分 +1 收起 理由
赵宗荣 + 1

查看全部评分

回复 使用道具 举报
里氏代换原则,子类型必须能够替换掉它们的父类型。
开放-封闭原则,是说软件实体(类、模块、函数等等)应该可以扩展,但是不可修改。

评分

参与人数 1技术分 +1 收起 理由
赵宗荣 + 1

查看全部评分

回复 使用道具 举报
本帖最后由 丁海平 于 2013-8-25 11:06 编辑

当设计程序模块时,会创建一些类层次结构....然后通过扩展一些类来创建它们的子类。
我们必须确保子类只是扩展而没有替换父类的功能,否则当我们在已有程序模块中使用它们时将会产生不可预料的结果。
里氏代换原则就是表明当一个程序模块使用基类时,基类的引用可以被子类替换而不影响模块的功能。
里氏代换原则就是:
基类完全能够被子类替代而不影响模块的功能。
开放封闭原则就是:
软件实体应该对扩展开发,而对修改封闭。开放封闭原则是所有面向对象原则的核心。软件设计本身所追求的目标就是封装变化,降低耦合,而开放封闭原则正是对这一目标的最直接体现。
开放封闭原则主要体现在两个方面:
对扩展开放,意味着有新的需求或变化时,可以对现有代码进行扩展,以适应新的情况。
对修改封闭,意味着类一旦设计完成,就可以独立其工作,而不要对类尽任何修改

评分

参与人数 1技术分 +1 收起 理由
赵宗荣 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马