Sobes.tech
Back to questions
Junior — Middle
67

Можешь привести пример реализации паттерна Builder на языке Java?

Answer from AI

sobes.tech AI

Пример реализации паттерна Builder на Java для создания объекта "Компьютер":

public class Computer {
    private String CPU;
    private int RAM;
    private int storage;

    private Computer(Builder builder) {
        this.CPU = builder.CPU;
        this.RAM = builder.RAM;
        this.storage = builder.storage;
    }

    public static class Builder {
        private String CPU;
        private int RAM;
        private int storage;

        public Builder setCPU(String CPU) {
            this.CPU = CPU;
            return this;
        }

        public Builder setRAM(int RAM) {
            this.RAM = RAM;
            return this;
        }

        public Builder setStorage(int storage) {
            this.storage = storage;
            return this;
        }

        public Computer build() {
            return new Computer(this);
        }
    }
}

// Использование:
Computer myComputer = new Computer.Builder()
    .setCPU("Intel i7")
    .setRAM(16)
    .setStorage(512)
    .build();

Такой подход позволяет создавать объекты с разными конфигурациями, избегая большого количества конструкторов.