继承:
实现接口:
聚合
聚合是一种特别类型的关联,用于描述“总体到局部”的关系。在基本的聚合关系中, 部分类 的生命周期独立于 整体类 的生命周期。
举例来说,我们可以想象,车 是一个整体实体,而 车轮 轮胎是整辆车的一部分。轮胎可以在安置到车时的前几个星期被制造,并放置于仓库中。在这个实例中,Wheel类实例清楚地独立地Car类实例而存在。然而,有些情况下, 部分 类的生命周期并 不 独立于 整体 类的生命周期 -- 这称为合成聚合。举例来说,考虑公司与部门的关系。 公司和部门 都建模成类,在公司存在之前,部门不能存在。这里Department类的实例依赖于Company类的实例而存在。
组合:说白了就是两个人要死要活的。(上面说的合成聚合)
class MeiNv
{
ShuiGe shuige;
MeiNv()
{
shuige = new shuige();
//我生你也生
}
~MeiNv()
{
shuige.Dispose();
//我死你殉情
}
}
class ShuiGe:IDisposable
{
public override void Dispose()
{
//
}
}
依赖:
表现为C6 是c5方法中的参数,或c5调用c6的静态方法。意即c5要完成自己的工作必须有c6的协助。你需要乘坐公交车上班,而不需要拥有公交车。
还有的地方说聚合就像汽车与停车场的关系
class TingCheChang
{
QiChe[] qichelist;
}
class QiChe
{
}
停车场可以有一两,两辆汽车,也可以一辆也没有。