JAVA和Nginx 教程大全

网站首页 > 精选教程 正文

java 核心技术-12版 卷Ⅰ- 4.1.2 对象

wys521 2024-11-28 09:01:01 精选教程 19 ℃ 0 评论

要想使用OOP,一定要清楚对象的三个主要特性:

  • 对象的行为(behavior)可以对这个对象做哪些操作,或者可以对这个对象应用哪些方法?
  • 对象的状态(state)——调用那些方法时,对象会如何响应?
  • 对象的标识(identity)——如何区分可能有相同行为和状态的不同对象?

同一个类的所有实例对象都有一种家族相似性,它们都支持相同的行为。一个对象的行为由所能调用的方法来定义。

此外,每个对象都会保存着描述当前状况的信息,这就是对象的状态。对象的状态可能会随着时间而发生改变,但这种改变不是自发的。对象状态的改变必然是调用方法的结果(如果不经过方法调用就可以改变对象状态,这说明破坏了封装性)。

但是,对象的状态并不能完全描述一个对象,因为每个对象都有一个唯一的标识(identity,或称身份)。例如,在一个订单处理系统中,任何两个订单都是不同的,即使它们订购的商品完全相同。需要注意,作为同一个类的实例,每个对象的标识总是不同的,状态也通常有所不同。

对象的这些关键特性会彼此相互影响。例如,对象的状态会影响它的行为(如果一个订单“已发货”或“已付款”,就应该拒绝要求增删商品的方法调用。反过来,如果订单是“空的”,即还没有订购任何商品,就不应该允许“发货”)。

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表