Junior — Middle
Nesne tasarımında Prototype deseninin ne zaman ve nasıl uygulandığına dair bir örnek verebilir misiniz?
sobes.tech yapay zeka
AI'dan gelen yanıt
Паттерн Prototype используется, когда нужно создавать новые объекты путём копирования существующих, а не создавать их с нуля. Это полезно, если создание объекта дорогостоящее или сложное.
Пример применения в Java:
Допустим, у нас есть класс Document, который содержит много данных и настроек. Вместо того, чтобы создавать новый документ с нуля, мы можем клонировать существующий шаблон.
public class Document implements Cloneable {
private String content;
private String author;
public Document(String content, String author) {
this.content = content;
this.author = author;
}
@Override
protected Document clone() {
try {
return (Document) super.clone();
} catch (CloneNotSupportedException e) {
throw new AssertionError();
}
}
// геттеры и сеттеры
}
// Использование:
Document template = new Document("Шаблон", "Автор");
Document newDoc = template.clone();
newDoc.setContent("Новый контент");
Такой подход позволяет быстро создавать похожие объекты, изменяя только необходимые поля, что экономит ресурсы и упрощает код.