0
假设我有一个基类Polygon.I有它的派生类,比如Rectangle和更多。现在如果我需要向类Polygon添加一个新函数并且我没有访问基类Polygon或派生类的源代码。我该怎么做?可能吗?修改基类,以便更改反映在派生类中
假设我有一个基类Polygon.I有它的派生类,比如Rectangle和更多。现在如果我需要向类Polygon添加一个新函数并且我没有访问基类Polygon或派生类的源代码。我该怎么做?可能吗?修改基类,以便更改反映在派生类中
号如果您没有访问源代码,那么你就不能修改源代码。
您只能在类的原始定义中添加成员函数。
使用继承基类的中介类可以解决问题。矩形和其他继承它,以便如果需要添加新方法,它在中间类内部实现。
您可以使用[装饰模式](http://en.wikipedia.org/wiki/Decorator_pattern)。 – 2012-01-28 19:04:49