面向对象是一种来自软件设计的软件技术,更是一种成熟的思想,而世间万物都是对象,所以这种思想放之四海而皆准。在软件设计中,面向对象的技术已经成为软件开发的主流,使得计算机能够以更加符合人类思维的方式解决问题。
对象是客观世界的组成,像我们看到的每个东西都可以认为是一个对象,板凳是一个对象,桌子是一个对象等等;每个对象都有自己的数据和操作,状态和行为。这些描述的名词意思相近,都是用来对数据进行描述的。板凳自己的重量高度等都是板凳这个对象的数据;板凳的操作和行为都是板凳的一种属性,板凳的作用是被用来坐的;描述现在板凳是否被坐着是板凳现在的状态。对象也只有在具有状态和属性的情况下才有意义,否则对象就没有了存在的意义。
对象还可以是概念性的对象,这些的对象不能够被实例化,像。。。未来、梦想这类的,不能被实例化的对象也是对象。在面向对象的程序设计中也是可以用一个模型来表示的。
在软件中的对象是一种将状态和行为有机结合起来的软件构造模型,用来描述现实世界中的一个对象,建立现实世界中的对象的模型,比如用一个动画程序代表现实世界中飞行的飞机,或者用控制电子机械的程序来代表现实世界运行的机械车。
对象间通过消息相互联系和作用,消息是指描述事件发生的信息。事件是一种由系统预先定义而由用户或系统发出的动作,事件作用于对象,对象识别事件并作出相应反应,产生消息来驱动整个系统程序的执行。
类是具有相同属性和操作的一组对象的组合。类描述了一组相似对象的共同特征,为该类的全部对象提供了统一的抽象描述。类的确定和划分没有统一规定,通常是找出对象的共性,将具有共性的对象用一个类表述。
类给出了该类的全部对象的抽象定义,定义了对象的数据结构和对象所要执行的操作,即类的对象要被调用执行哪些操作,以及执行这些操作时对象还要执行哪些操作。
类还用来在内存中开辟出一个数据区,用于存储新对象的属性或把系列行为和对象关联起来。
通过以上的学习,我们要知道,对象和类的关系不可分割,在软件的需求分析中可以提炼出很关键的一些名词,这些名词就是软件所确定的对象,再用这些对象抽象出类,就确定了目标系统的基础对象类型。在面向对象的程序设计中,对象是系统的基本划分单位,确定类和对象非常重要,也是软件开发的第一步,做好了类和对象的确定,对软件以后的测试和维护也有非常大的帮助。