对象有如下一些基本特点。
(1) 以数据为中心。操作围绕对其数据所需要做的处理来设置,不设置与这些数据无关的操作,而且操作的结果往往与当时所处的状态 (数据的值)有关。
(2) 对象是主动的。它是进行处理的主体。不能从外部直接加工它的私有数据,必须通过它的公有接口向对象发消息,请求它执行它的 某个操作,处理它的私有数据。
(3) 实现了数据封装。对象好像是一只黑盒子,它的私有数据完全被封装在盒子内部,对外是隐藏的、不可见的,对私有数据的访问或 处理只能通过公有的操作进行。
(4) 本质上具有并行性。对象是描述其内部状态的数据及可以对这些数据施加的全部操作的集合。不同对象各自独立地处理自身的数 据,彼此通过发消息传递信息完成通信。
(5) 模块独立性好。对象内部各种元素彼此结合得很紧密,内聚性相当强。由于完成对象功能所需要的元素(数据和方法)基本上都被封 装在对象内部,它与外界的联系自然就比较少,因此,对象之间的耦合通常比较松。