面向对象编程,即OOP,面向对象的概念和应用已经超越了程序设计、软件开发领域,现在已经发展到了各个领域。

面向对象可以说是对现实世界理解和抽象的方法,是计算机编程技术发展到一定阶段的产物。

它的特点:抽象  封装  继承   多态

用我的话说,其实可以这么理解,假如我是上帝,我要创造人类 (人类是对象)。

首先,我要知道人类要有哪些最基本的特征 ?

人要有思想,人还要有身体,这个过程呢就是【抽象

然后,创建对象的实例,男人和女人类;通过给男人和女人类,添加属性,设定肤色,身高;添加方法(行为),让人可以说话,行走和跑等。

因为人的数量很庞大,所以我需要找别人帮我一起造人,但是我不想让他知道我造人的技术(人的脸需要用多少克泥巴,需要怎么用手去捏鼻子等等),我可以把我的造人的技术封装起来,别人只需要知道他要做什么样的人类就好了。【封装

当我自己造人的时候,我可能造着造着就累了,我可能就要用我之前造出来的某个泥人作为模板“复制”,“粘贴”了。用模板创出来的泥人具有模板的特征,就像孩子一样具有父母的性状。我们称这个过程为【继承

但是呢 ,好多泥人都是我后来偷懒用模板复制出来的,为了让人类更丰富多彩一些,我对他们又进行了改变。这个过程可以叫【多态

 

面向过程与面向对象区别

面向过程:分析解决问题所需要的步骤,然后用函数把这些步骤一步步实现。

面向对象:把构成问题的事物分解成各个对象,建立对象的目的不是为了完成一个个步骤,而是为了描述某个事物在整个解决问题的步骤中的行为。