面向对象的概念


面向对象是什么

面向对象编程可以看作是一系列对象互相协作的软件设计。

面向对象程序设计的目的是在编程中促进更好的灵活性和可维护性。凭借对模块化的重视,面向对象的代码开发更简单,更容易理解。面向对象编程的三个主要特征是1.封装2.继承3.多态

所有的程序是由一定的属性和行为对象组成的,不同对象的访问通过函数调用来完成,对象间所有的交流都是通过方法调用,通过封装对象数据,提高复用率。

JavaScript是一种基于原型的面向对象语言,而不是基于类的。正是由这一根本的区别,其如何创建对象的层级结构以及对象的属性与属性值是如何继承的并不是那么清晰。

基于原型的语言(如JavaScript)并不存在这种区别:它只有对象。基于原型的语言具有所谓原型对象(prototypical object)的概念。原型对象可以作为一个模板,新对象可以从中获得原始的属性。任何对象都可以指定其自身的属性,即可以是创建时也可以在运行时创建。而且,任何对象都可以作为另一个对象的原型(prototype),从而允许后者共享前者的属性。

封装

所谓封装就是按照要求使用并得到对应的结果,而不需要知道其真正的执行原理是怎样的。封装主要用于阐述对象中所包含的内容,它通常由两部分组成

  • 相关的数据(用于存储属性)
  • 基于这些数据所能做的事情

继承

继承通常是指类与类之间的关系。如果两个类都有相同的属性或方法,那么可以让一个类继承于另一个类,这样就可以不需要在前者再次定义同样的属性或方法。

多态

不同的对象可以定义具有相同名称的方法,方法是作用于所在的对象中。这种不同对象通过相同方法的调用实现各自行为的能力,被称为多态。

例如A对象对象具有sayMe()方法,B对象继承与A对象,那B对象中也具有sayMe()方法。当调用sayMe()方法时,并不知道方法时A对象还是B对象。但这并不影响代码的正常工作。


文章作者: me
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 me !