学习面向对象的语言,要弄清楚面向对象,首先要从理解面向过程开始。
回想起之前在学习C语言时,每次拿到一个题目,首先想到的是,先分析出解决问题所需要的步骤,每一个功能点,用一个函数来表示,使用的时候一个一个进行调用就好了,程序的重心在函数上(谓语);面向对象,就是要把问题事务分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描述每个事物在整个解决问题过程中的行为,强调的是对象本身(主语)
还有就是数据是单独存储还是与操作存储在一起。对面向过程而言,数据是独立的。而在面向对象中,对象本身就提供了存储数据的空间(类的数据成员),这样就是函数的参数传递简单多了,而且提供了数据封装后,数据的访问也变可靠了。
两句话:
面向对象是将实物高度抽象化
面向过程是一种自顶向下的编程。
而面向对象是自下先建立抽象模型然后再使用模型。