继承和派生(1)—— 类与类之间的关系、继承的基本概念

1、类与类之间的关系

  has-A,uses-A 和 is-A

  has-A 包含关系,用以描述一个类由多个“部件类”构成。实现has-A关系用类成员表示,即一个类中的数据成员是另一种已经定义的类。

  uses-A 一个类部分地使用另一个类。通过类之间成员函数的相互联系,定义友员或对象参数传递实现。

  is-A 机制称为“继承”。关系具有传递性,不具有对称性。

class A
{
public:
    void funcA()
    {

    }
    int a;
};

//类B拥有类A的成员变量,B has A,类B 依赖于 类A
class B
{
public:
    void funcB()
    {

    }
    A a;
};

//类C的成员方法 需要类A的形参,C use A,类C 依赖于 类A
class C
{
public:
    void funcC(A *a)
    {

    }
    void funcCC()
    {

    }
};

//类D继承于类A, 类D如果是继承类A, 类D is 类A, 类C 继承于 类A,耦合度很高 
class D:public A
{
public:
    void funcD()
    {
        cout << a << endl;
    }
};

2、继承的基本很概念

猜你喜欢

转载自www.cnblogs.com/yuehouse/p/9829324.html