组件化设计模式java代码
时间: 2023-10-11 15:09:57 浏览: 49
组件化设计模式是一种将系统划分为可重用的、独立的组件的设计模式。以下是一个简单的 Java 示例代码:
1. 定义接口
```java
public interface Component {
void operation();
}
```
2. 实现组件
```java
public class ConcreteComponent implements Component {
@Override
public void operation() {
// 实现组件的具体操作
}
}
```
3. 实现装饰器
```java
public abstract class Decorator implements Component {
protected Component component;
public Decorator(Component component) {
this.component = component;
}
@Override
public void operation() {
component.operation();
}
}
```
4. 实现具体装饰器
```java
public class ConcreteDecoratorA extends Decorator {
public ConcreteDecoratorA(Component component) {
super(component);
}
@Override
public void operation() {
super.operation();
// 添加装饰器A的操作
}
}
public class ConcreteDecoratorB extends Decorator {
public ConcreteDecoratorB(Component component) {
super(component);
}
@Override
public void operation() {
super.operation();
// 添加装饰器B的操作
}
}
```
5. 使用示例
```java
Component component = new ConcreteComponent();
component = new ConcreteDecoratorA(component);
component = new ConcreteDecoratorB(component);
component.operation();
```
在上面的示例中,首先创建了一个具体组件 ConcreteComponent,然后通过 ConcreteDecoratorA 和 ConcreteDecoratorB 对其进行装饰。最后调用 component.operation() 方法时,会依次执行 ConcreteComponent、ConcreteDecoratorA 和 ConcreteDecoratorB 中的 operation() 方法,实现了组件化的设计模式。