是否可以通过阅读源代码来区分组合和聚合关系?
我试图找到一些模式,我在下面列出了它们.
我以this site为例来解释我认为的模式
组成
public class Engine { . . . } public class Car { Engine e = new Engine(); ....... }
聚合
public class Address { . . . } public class Person { private Address address; public Person(Address address) { this.address = address; } . . . }
我发现这些模式可以区分
组成(是其中的一部分)
>定义为一个类的字段.
>示例:[Engine e] Engine定义为Car类的字段e
>在类中实例化和分配.
>示例:[Engine e = new Engine();]引擎在实例中被实例化
类
聚合(有)
>定义为一个类的字段
>示例:[私有地址;]地址定义为字段
类Person的地址
>在课堂上安排好
>示例:[Address address = new Address();]地址已实例化
外面的人.
>示例:[Person person = new Person(address);]实例
地址作为参数通过构造函数传递并分配
在Person类的构造函数中.
我可以考虑这些来区分聚合和组成关系吗?
是否存在更多用于区分的限制因素?
解决方法
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。