
课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
面向对象编程开发是目前的一个主流编程开发方法,而本文我们就通过案例分析来简单了解一下,面向对象编程开发原则分享。
1.单一职责
定义:一个类只负责一个功能领域中的相应职责,或者可以定义为:就一个类而言,应该只有一个引起变化的原因.
使用单一职责的原因:如果一个类承担的职责太多,它被复用的可能性就越小,而且一个类承担的职责过多,就相当于将这些职责耦合在一起,当其中一个职责变化时,可能影响其他职责的运作,因此要将这些职责分离.将不同的职责封装在不同的类中.(如果多个职责总是同时发生改变则可以将他们封装在同一个类中)
**单一职责原则是实现高内聚、低耦合的指导方针.**
内聚:内聚是从功能角度来度量模块内的联系,一个好的内聚模块应当恰好做一件事。它描述的是模块内的功能联系.
耦合:耦合是软件结构中各模块之间相互连接的一种度量,耦合强弱取决于模块间接口的复杂程度、进入或访问一个模块的点以及通过接口的数据。
示例:有一个汽车的类,有几个方法分别是开门、关门、前进、后退、修车、维护、洗车的功能
按照单一职责的定义一个类只负责一个功能领域中的相应职责,我们可以对汽车这个类进行优化,将修车、维护、洗车的工作抽离到修车厂的类中.
优化后的类:
2.开闭原则
开闭原则是面向对象的可复用设计的一基石,它是重要的面向对象设计原则.
定义:一个软件实体应当对扩展开放,对修改关闭.即软件实体应该尽量在不修改原有代码的情况下进行扩展.
为了满足开闭原则,需要对系统进行抽象化设计,抽象化是开闭原则的关键.使用接口、抽象类定义系统的抽相层,再通过具体类来进行扩展.
如果需要修改系统的行为,无须对抽象层进行任何改动,只需要增加新的具体类来实现新的业务功能即可,实现在不修改已有代码的基础上扩展系统的功能,达到开闭原则的要求.
3.里氏代换原则
定义:所有引用基类(父类)的地方必须能透明地使用其子类的对象.
里氏代换原则告诉我们,在软件中将一个基类对象替换成它的子类对象时,程序将不会产生任何错误和异常,反过来则不成立.
里氏代换原则是实现开闭原则的重要方式之一,由于使用基类对象的地方都可以使用子类对象,因此在程序中尽量使用基类类型来对对象定义,而在运行时再确定其子类类型,用子类对象来替换基类对象.
使用里氏代换原则需要注意的问题:
子类的所有方法必须在父类中声明,或子类必须实现父类中声明的所有方法.根据里氏代换原则,为了保证系统的扩展性,在程序中通常使用父类来进行定义,如果一个方法只存在子类中,在父类中不提供相应的声明,则无法在父类定义的对象中使用该方法.
尽量把父类设计为抽象类或接口,让子类继承父类或实现父接口,并实现在父类中声明的方法,运行时,子类实例替换父类实例,我们可以很方便地扩展系统的功能,同时无须修改原有子类的代码,增加新的功能可以通过增加一个新的子类来实现.里氏代换原则是开闭原则的具体实现之一
【免责声明】本文系本网编辑部分转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与管理员联系,我们会予以更改或删除相关文章,以保证您的权益!更多内容请加danei456学习了解。欢迎关注“达内在线”参与分销,赚更多好礼。