PHP 设计模式学习 类之间的关系

233 阅读1分钟

总共六种关系

  1. 依赖关系
  2. 泛化关系
  3. 实现关系
  4. 关联关系
  5. 聚合关系
  6. 组合关系

依赖关系

只要在类中用到了对方,那他们之间就存在依赖关系,如果没有对方连编译都通过不了

<?php
class  PersonServiceBean
{
    private PersonDao $personDao;

    public function save(Person $person)
    {
    }

    public function getIDCard(): IDCard
    {
        $IDCard = new IDCard();
        return $IDCard;
    }


    public function modify()
    {
        $department = new Department();
    }
}

class PersonDao
{
}

class  Person
{
}

class IDCard
{
}

class Department
{
}

泛化关系

泛化关系实际上就是继承关系,他是依赖关系的特例

实现关系

实现关系就是A类实现B类,他是依赖关系的特例(接口)

关联关系

关联关系实际上就是类与类之间的关联,他是依赖关系的特例 关联关系具有导航性:即双向关系或者单向关系 多重性 1对1 1对多 多对多

聚合关系

聚合表示的是整体和部分的关系,整体与部分可以分开。聚合关系是关联关系的特例,所以他具有导航性与多重性

组合关系

聚合关系的整体与部分不可以分开。那么就是组合关系(也是整体与部分的关系)