使用Decorator模式实现的Java继承

时间:2015-03-24 13:55:03

标签: java inheritance decorator

认为在引擎盖下java继承是正确的 使用装饰器模式实现?
在我看来,继承和装饰模式几乎看起来非常相似 没有什么区别。

编辑:
我的意思是,让A成为B的子类,我们可以说在A中,关键字super始终引用A类型的对象,我们是“装潢”。

由于

2 个答案:

答案 0 :(得分:0)

我怀疑Java使用Decorator模式在引擎下实现继承。基类及其扩展之间的关系在编译时是固定的,而装饰器与它们装饰的对象之间的关系可以在运行时更改。

答案 1 :(得分:0)

inheritancedecorator pattern的共同之处在于它们都允许您更改对象的行为方式。另外,更准确地说,decorator pattern是由inheritance的概念实现的。

但区别在于:

1. Decorator pattern使运行时对象更改更容易:

2. Decorator Pattern使行为修改更容易

3.在非动态情况下不需要Decorator pattern