Java面向对象基础
面向过程和面向对象 面向过程(Procedure Oriented)和面向对象(Object Oriented,OO)都是对软件分析、设计和开发的一种思想,它指导着人们以不同的方式去分析、设计和开发软件。 两者都贯穿于软件分析、设计和开发各个阶段,对应面向对象就分别称为 面向对象分析(OOA)、面向对象设计(OOD)和面向对象编程(OOP)。 面向对象和面向过程的总结 都是解决问题的 思维方式 ,都是代码组织的方式。 解决 简单 问题可以使用 面向过程 解决 复杂 问题: 宏观上使用面向对象把握,微观处理上仍然是面向过程。 面向对象思考方式 遇到复杂问题,先从问题中找名词,然后确立这些名词哪些可以作为类,再根据问题需求确定类的属性和方法,确定类之间的关系。 比喻: 一个经典的比喻:面向对象是盖浇饭、面向过程是蛋炒饭。盖浇饭的好处就是“菜”“饭”分离,从而提高了制作盖浇饭的灵活性。饭不满意就换饭,菜不满意换菜。用软件工程的专业术语就是“可维护性”比较好,“饭” 和“菜”的耦合度比较低。 对象的进化史(数据管理和企业管理共通之处) 数据无管理时代 最初的计算机语言只有基本变量(类似我们学习的基本数据类型),用来保存数据。那时候面对的数据非常简单,只需要几个变量即可搞定;这个时候不涉及“数据管理”的问题。同理,就像在企业最初发展阶段只有几个人,不涉及管理问题,大家闷头做事就OK了。