What is the difference between a Singleton and a Prototype pattern?
- None of the above
- The Singleton and Prototype patterns are the same
- The Singleton pattern creates multiple instances, while the Prototype pattern creates only one instance
- The Singleton pattern creates only one instance, while the Prototype pattern creates multiple instances
The Singleton pattern ensures that a class has only one instance and provides a global point of access to that instance, while the Prototype pattern provides a mechanism for creating object instances that are exact copies of a prototype object
Name some of the design patterns used in JDK library.
- Abstract Factory, Builder, Factory Method, Singleton
- Adapter, Facade, Observer, Prototype
- Chain of Responsibility, Command, Interpreter, Iterator
- Decorator, Mediator, State, Strategy
Some of the design patterns used in the JDK library include Decorator, Mediator, State, and Strategy. These patterns are used in various classes and APIs of the Java Standard Library to provide a clean and efficient implementation of common design problems.
What are the benefits of using Factory pattern?
- It allows the creation of objects without specifying the exact class of object that will be created
- It helps to reduce the number of objects in the system, making it more efficient
- It promotes the loose coupling between objects, making the system easier to maintain and extend
- It provides a clean and efficient implementation of the Object-Oriented principles
The benefits of using Factory pattern include promoting the loose coupling between objects, making the system easier to maintain and extend, and providing a clean and efficient implementation of the Object-Oriented principles. The Factory pattern helps to encapsulate the object creation process, making it easier to change the object creation logic in the future if necessary.
What is the purpose of the Null Object pattern?
- To create objects with complex behavior
- To define a default behavior for an object
- To replace null references with meaningful objects
- To validate user input
The Null Object pattern aims to replace null references with objects that have a defined behavior, avoiding runtime errors.
What is the Singleton design pattern used for?
- To define a one-to-many dependency between objects so that changes to one object result in changes to many other objects.
- To enforce a single instance of a class per application.
- To ensure that a class has only one instance and provide a global point of access to that instance.
- To provide a way to dynamically instantiate objects of a specified class.
The Singleton design pattern is used to ensure that a class has only one instance and to provide a global point of access to that instance. This can be useful in situations where it is important to have a single instance of a class that provides a shared resource.
What is Adapter Pattern?
- The Adapter pattern is a design pattern used to aggregate several classes into a single class to simplify the management and organization of code.
- The Adapter pattern is a design pattern used to convert the interface of one class into another interface that a client is expecting. This allows classes with incompatible interfaces to work together.
- The Adapter pattern is a design pattern used to create new objects from existing ones by modifying their properties or behavior.
- The Adapter pattern is a design pattern used to modify the behavior of an existing class to make it meet the requirements of a different interface.
The Adapter pattern is a design pattern used to convert the interface of one class into another interface that a client is expecting. This allows classes with incompatible interfaces to work together.
What is the purpose of the Command pattern?
- To allow objects to be treated as commands that can be executed, deferred or queued
- To create complex objects step by step, using a builder object to abstract the process of creating the object
- To provide a common interface for a group of related classes
- To provide a simplified interface to a complex system, hiding the complexity of the system behind a single interface
The Command pattern allows objects to be treated as commands that can be executed, deferred or queued
What is the difference between the Abstract Factory and Factory patterns?
- The Abstract Factory pattern is used to create objects without specifying the exact class of object that will be created, while the Factory pattern is used to provide an interface for creating families of related or dependent objects.
- The Abstract Factory pattern is used to create singleton objects, while the Factory pattern is used to create objects without specifying the exact class of object that will be created.
- The Abstract Factory pattern is used to provide a generic interface for creating objects, while the Factory pattern is used to provide a specific interface for creating objects.
- The Abstract Factory pattern is used to provide an interface for creating families of related or dependent objects, while the Factory pattern is used to create objects without specifying the exact class of object that will be created.
The Abstract Factory pattern is used to provide an interface for creating families of related or dependent objects, while the Factory pattern is used to create objects without specifying the exact class of object that will be created.
What is the difference between the Visitor and Iterator patterns?
- None of the above
- The Visitor and Iterator patterns are the same
- The Visitor pattern allows you to add new operations to existing object structures without modifying them, while the Iterator pattern provides a way to access the elements of a collection object in a sequential manner
- The Visitor pattern provides a way to access the elements of a collection object in a sequential manner, while the Iterator pattern allows you to add new operations to existing object structures without modifying them
The Visitor pattern allows you to add new operations to existing object structures without modifying them, while the Iterator pattern provides a way to access the elements of a collection object in a sequential manner
What is Front Controller pattern?
- A design pattern to handle communication between objects
- A design pattern to handle database connections
- A design pattern to manage the flow of control from a centralized handler
- A design pattern to provide a unified interface to a set of interfaces
The Front Controller pattern provides a centralized handler for requests coming from the client. It coordinates the work of different request handlers to provide a unified interface for the user.