类和类之间的关系
-
Object Oriented Programming -
Object Oriented Design
面向对象的思想:类与类之间产生关系
关系:
-
Inheritance-> 继承 -
Composition-> 复合 -
Delegation-> 委托 ->Composition by reference-> 两个类之间用指针相连
复合(composition)
示例代码:
复合的概念:
queue这个类中有一个其他的类deque<T> -> queue当中全部调用deque的方法去实现功能
adapter适配.可能在deque当中开放了100个功能.写一个queue复合了deque,但是只开放了六个接口.
复合概念下的构造函数和析构函数
-
构造由内而外
示例代码:
// Container类当中复合一个Component类
Container::Container(...) : Component() {...}; // 这是正确的写法.只是在构造这一步编译器会帮我们去做这个事情
默认调用的是无参数构造函数,需要调用其他的构造函数需要手动编写修改
-
析构由外而内
示例代码:
Container::~Container(...) {... ~Component()};
Composition by reference
A类当中包含着B类的指针:
StringRep类
Inheritance(继承)
继承语法:
这里的构造函数和析构函数和复合的情况一样
-
构造函数先调用父类.然后才用自己的构造函数
-
析构函数先调用自己的,然后再调用父类的构造函数
-
It's a lonely road!!!

浙公网安备 33010602011771号