在Java中,组合(Composition)是一种通过将一个类的对象作为另一个类的成员变量来简化对象创建的方法。这种方法可以减少代码的冗余,并提高代码的可维护性。
以下是一个简单的例子,说明如何使用组合简化对象创建:
假设我们有两个类:Engine
和 Car
。Car
类需要一个 Engine
对象作为其成员变量。在组合中,我们可以将 Engine
对象作为 Car
类的构造函数参数传递,从而简化对象创建。
// Engine 类
public class Engine {
public void start() {
System.out.println("Engine started.");
}
}
// Car 类
public class Car {
private Engine engine;
// 使用组合简化对象创建
public Car(Engine engine) {
this.engine = engine;
}
public void start() {
engine.start();
}
}
// 主类
public class Main {
public static void main(String[] args) {
// 创建 Engine 对象
Engine engine = new Engine();
// 使用组合创建 Car 对象,传递 Engine 对象作为参数
Car car = new Car(engine);
// 调用 Car 对象的方法
car.start();
}
}
在这个例子中,我们首先创建了一个 Engine
对象,然后将其传递给 Car
类的构造函数,从而创建了一个包含 Engine
对象的 Car
对象。这样,我们可以避免在 Car
类内部单独创建 Engine
对象,从而简化了对象创建过程。