Java中的类聚合关系是否只能通过实例对象来实现?
Posted
技术标签:
【中文标题】Java中的类聚合关系是否只能通过实例对象来实现?【英文标题】:Is class aggregation relationship in Java only achieved through instance objects?Java中的类聚合关系是不是只能通过实例对象来实现? 【发布时间】:2018-08-12 15:13:00 【问题描述】:如果 A 类从 B 类调用一个静态方法,这是否仍然符合“聚合”关系? 那么,类关联是不是也只能通过调用类对象来实现呢,还是调用静态方法才算关联关系呢?
【问题讨论】:
【参考方案1】:是的,关联以及它的两种特殊形式,聚合和组合,都是根据对象实例之间的交互来定义的:
关联定义了对象类之间的关系,它允许一个对象实例导致另一个对象实例代表它执行操作。 [Wikipedia]
不根据实例定义的唯一关系是依赖:例如,通过接收实例作为参数,或调用任何静态方法来建立关系与否。
【讨论】:
您好,感谢您的回答。那么这是否意味着如果类 A 只是创建一个字符串变量 String x = "chair"; A 类现在正在聚合类 String? @NewLearner 如果x
是类的成员(取决于语言,它可能被称为字段、属性或成员变量),那么它就是一个聚合(HAS-A)。如果它是一个局部变量,那么它只是一个依赖项。以上是关于Java中的类聚合关系是否只能通过实例对象来实现?的主要内容,如果未能解决你的问题,请参考以下文章