1.面向过程和面向对象思想
两者都贯穿于软件分析、设计和开发的各个阶段,对应面向对象就分别称为面向对象的分析(OOA)、面向对象的设计(OOD)和面向对象的编程(OOP)。C语言是一种典型的面向过程语言,Java是一种典型的面向对象的编程语言。
OOP本质:以类的方式组织代码,以对象的形式组织(封装)数据。
面向对象可以帮助人们从宏观上把握,从整体上分析整个系统。但是,具体到部分微观操作的(就是一个个方法)实现,仍然需要面向过程的思路去处理。
千万不要把面向过程和面向对象方法对立起来,他们是相辅相成的。面向对象的方法最终离不开面向过程的。
注意
面向对象的思想具有三大特征,即封装性、继承性和多态性。有了封装才能继承,有了继承才能多态。面向过程的思想没有继承性和多态性。并且,面向过程的封装只是封装功能,而面向对象可以封装数据和功能。
总结
- 对象也是一种数据结构(对数据的管理模式),是将数据和数据的行为放到了一起。
- 在内存上,对象就是一个内存块,存放了相关的数据集合。
- 对象的本质就是一种数据的组织方式。
2.对象和类
总结
- 从认识论角度考虑,先有对象后有类。
- 对象是具体的事物;类是对对象的抽象。
- 从代码运行角度,类可以看成是一类对象的模板,对象可以看成该类的一个具体实例。
- 类是用于描述同一类型对象的一个抽象概念,类中定义了这一类对象所应具有的共同属性和方法。