面向对象

基本特征

1. 封装

把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏。

2. 继承

可以使用现有类的所有功能,并在无需重新编写原来的类的情况下对这些功能进行扩展。

3. 多态

允许你将父对象设置成为和一个或更多的他的子对象相等的技术,赋值之后,父对象就可以根据当前赋值给它的子对象的特性以不同的方式运作

实现方式:

  • 重载: 类中多个同名方法参数列表不同
  • 重写(覆盖): 子类覆盖父类方法

设计原则

对接口编程而不是对实现编程。
优先使用对象组合而不是继承。

一、单一职责

就一个类而言,只有一个引起它变化的原因

二、开闭原则

一个软件实体,应该对拓展开放,对修改关闭。(只有因为错误而修改,否则需要拓展时,不应修改实体本身,而是用继承等方式去复用)

三、里氏替换原则

引用基类的地方必须能透明地使用其子类。

四、依赖倒置原则

高层模块不依赖于低层次模块的实现细节。(面向接口/抽象编程)

五、接口隔离原则

类间的依赖关系应该建立在最小接口上,不应依赖它不需要的接口

六、迪米特法则

一个实体应当尽量少的与其他实体之间发生相互作用,使得系统功能模块独立。

七、组合/聚合复用原则

尽量使用组合和聚合少使用继承的关系来达到复用的原则.

你可能感兴趣的:(面向对象)