什么是面向对象?什么又是面向过程

面向对象:——行为化

面向对象就是把整个需求按照特点、功能划分,将这些存在共性的部分封装成类,创建了对象不是为了完成某一步骤,而是描述某个事物在解决问题的步骤中的行为

面向对象的三个基本特征

——封装、多态、继承

  1. 封装

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

  2. 继承

    继承是指一种能力:它可以使用现有的类的所有功能,并且在无需重新编写原来类的情况下对这些功能进行扩展。通过继承创建的新类称为“子类”或者是“派生类”,被继承的类称为“基类”、“父类”或者“超类”。

  3. 多态性

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

    一句话理解:允许将子类类型的指针赋值给父类类型的指针。

    实现多态有两种方式:覆盖和重载,两种方式的区别在于:覆盖在运行时决定,重载是在编译时决定,而且覆盖和重载的机制不同。例如在Java中,重载方法的签名必须不同于原来方法的,但是对于覆盖签名必须相同。

面向过程——步骤化

面向过程就是分析出实现需求所需要的步骤,通过函数(方法)一步步实现这些步骤,接着依次调用即可。

面向对象和面向过程的区别

面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了。

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