Csharp/C#教程:关联,聚合和组合分享


关联,聚合和组合

我正在处理这个问题。 我正在创造数学问题,每个人都有回应。 例如。

我的大问题是。

如何在类问题和响应之间建立关系。 如果这应该是一个关联,聚合或组合,我也在处理。

谢谢。

编辑:很好,这是一个组合。 最后,根据上述句子,我该如何表现设计? 这些是我的一些想法,但我想我错了。

public class Question { public Response _response; //public List //public Dictionary public Question() { this._response = new Response(); } } public class Response { } 

关联是一种关系,所有对象都有自己的生命周期,没有所有者。 让我们举一个教师和学生的例子。 多个学生可以与单个教师相关联,并且单个学生可以与多个教师相关联,但是对象之间没有所有权,并且两者都有自己的生命周期。 两者都可以独立创建和删除。

聚合是一种特殊的关联forms,其中所有对象都有自己的生命周期但有所有权:子对象不能属于另一个父对象。 让我们举一个部门和老师的例子。 单个教师不能属于多个部门,但如果我们删除部门,教师对象将不会被销毁。 我们可以将其视为“有一种”关系。

组合又是聚合的一种特殊forms,我们可以将其称为“死亡”关系。 它是一种强大的聚合类型。 子对象没有生命周期,如果删除父对象,则还将删除所有子对象。 让我们再来看一下House和房间之间的关系。 房子可以包含多个房间,房间没有独立的生活,房间不能属于两个不同的房子。 如果我们删除房子,它的房间将被自动删除。 我们来看一下问题和选项之间的另一个关系示例。 单个问题可以有多个选项,选项不能属于多个问题。 如果我们删除一个问题,其选项也将被删除。

这两者之间存在关联。

问题是答案。

原因是 – 聚合和组合都是关联。 组合意味着子对象的生命周期取决于其父级 – 如果没有父级,则子级不能存在。

这正是你的情况。 因此 – 组成。

上述就是C#学习教程:关联,聚合和组合分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/cdevelopment/1009312.html

(0)
上一篇 2021年12月30日
下一篇 2021年12月30日

精彩推荐