public void hitSave() { saved TextWindow = textWindow.save(); } public void hitUndo() { textWindow.restore(savedTextWindow); public class Main(){ public static void main(String[] args) ( TextEditor textEditor = new TextEditor(new TextWindow()); textEditor.write("This is XYZ design pattern"); textEditor.write("in Java?\n"); textEditor.hitSave(); textEditor.write("This is SE class \n"); textEditor.hitUndo(); assertThat(textEditor.print()).isEqualTo("This is XYZ design pattern in Java\n"); } } A) Memento B Command Chain of Responsibility D Mediator E) Interpreter Iterator
public void hitSave() { saved TextWindow = textWindow.save(); } public void hitUndo() { textWindow.restore(savedTextWindow); public class Main(){ public static void main(String[] args) ( TextEditor textEditor = new TextEditor(new TextWindow()); textEditor.write("This is XYZ design pattern"); textEditor.write("in Java?\n"); textEditor.hitSave(); textEditor.write("This is SE class \n"); textEditor.hitUndo(); assertThat(textEditor.print()).isEqualTo("This is XYZ design pattern in Java\n"); } } A) Memento B Command Chain of Responsibility D Mediator E) Interpreter Iterator
Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
Related questions
Question
comptuer science help
![public void hitSave() {
saved TextWindow = textWindow.save();
}
public void hitUndo() {
textWindow.restore(savedTextWindow);
public class Main(){
public static void main(String[] args)
(
TextEditor textEditor = new TextEditor(new TextWindow());
textEditor.write("This is XYZ design pattern");
textEditor.write("in Java?\n");
textEditor.hitSave();
textEditor.write("This is SE class \n");
textEditor.hitUndo();
assertThat(textEditor.print()).isEqualTo("This is XYZ design pattern in Java\n");
}
}
A) Memento
B Command
Chain of Responsibility
D Mediator
E) Interpreter
F Iterator](/v2/_next/image?url=https%3A%2F%2Fcontent.bartleby.com%2Fqna-images%2Fquestion%2F81a2b3ad-739c-4a46-a1a9-6fcc88ba4ac8%2Ffe6aab8c-5592-4f85-ba2c-afc1f7b6dbdb%2Fn1ey8s_processed.png&w=3840&q=75)
Transcribed Image Text:public void hitSave() {
saved TextWindow = textWindow.save();
}
public void hitUndo() {
textWindow.restore(savedTextWindow);
public class Main(){
public static void main(String[] args)
(
TextEditor textEditor = new TextEditor(new TextWindow());
textEditor.write("This is XYZ design pattern");
textEditor.write("in Java?\n");
textEditor.hitSave();
textEditor.write("This is SE class \n");
textEditor.hitUndo();
assertThat(textEditor.print()).isEqualTo("This is XYZ design pattern in Java\n");
}
}
A) Memento
B Command
Chain of Responsibility
D Mediator
E) Interpreter
F Iterator

Transcribed Image Text:What is the behavioral design pattern used in the following Java code?
public class TextEditor {
private TextWindow textWindow;
public TextEditor(TextWindow textWindow) {
this.textWindow = textWindow;
}
}
public class TextWindow (
private StringBuilder currentText;
public TextWindow() {
this.currentText = new StringBuilder();
}
public void addText(String text) {
currentText.append(text);
}
}
}
public class TextWindowState {
private String text;
public TextWindowState(String text) {
this.text = text;
}
public String getText() {
return text;
}
}
private StringBuilder currentText;
public TextWindowState save() {
return new TextWindowState(currentText.toString());
}
public void restore(TextWindowState save) {
currentText = new StringBuilder(save.getText());
private TextWindowState saved TextWindow;
public void hitSave() {
saved TextWindow = textWindow.save();
Expert Solution

This question has been solved!
Explore an expertly crafted, step-by-step solution for a thorough understanding of key concepts.
Step by step
Solved in 2 steps

Knowledge Booster
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.Recommended textbooks for you

Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education

Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON

Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON

Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education

Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON

Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON

C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON

Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning

Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education