在讨论面向对象之前,我们先要了解面向过程。那么什么是面向过程呢?面向过程就是关注事物的过程本身。比如我们早上起床到单位上班这个过程,要经历穿衣、叠被、洗脸刷牙、上车等过程。面向过程通常要求要熟悉过程中的每一个环节,并且专注于各个环节的实现。由于面向过程对细节的关注,所带来的问题是, 使用面向过程来实现大型项目变成了不可能的任务。所以面向对象的编程思想应运而生。面向对象关注的是事物的本质。事物所具有的特点被当做对象的属性,而事物的行为能力又被作为对象的方法。这样一个设计人员只需要把一个庞大的系统设计成若干对象的结合,而不同对象相互协作来完成既定的软件目标。最后,面向对象并不是面向过程的对立面,实际上面向对象是面向过程的升级版。因为在对象的任何一个方法体里,都是一个过程。面向对象只是人们为了实现更为庞大的软件系统的一种新的思考方式。