A) To create a database
B) To model software as a collection of objects
C) To design network architecture
D) To manage user interface
View AnswerB
2. What does the term “object” refer to in OOAD?
A) A variable in a program
B) An instance of a class
C) A programming language
D) A data storage mechanism
View AnswerB
3. What is “polymorphism” in OOAD?
A) The ability of different objects to respond to the same function call in different ways
B) The process of hiding information
C) The use of more than one class
D) The inheritance of methods
View AnswerA
4. What is encapsulation in OOAD?
A) Hiding the internal state and requiring all interaction to be performed through an object’s methods
B) Combining two or more classes
C) Using the same method in different objects
D) Creating a blueprint of an object
View AnswerA
5. What is “inheritance” in Object-Oriented Programming?
A) Creating multiple classes
B) Using methods of another class
C) One class acquiring properties and behaviors from another
D) A method of combining data
View AnswerC
6. What is the benefit of using abstraction in OOAD?
A) It hides unnecessary details and shows only relevant information
B) It allows objects to inherit properties
C) It provides multiple methods for objects
D) It defines object relationships
View AnswerA
7. What is a “class” in Object-Oriented Design?
A) A template for creating objects
B) An instance of an object
C) A method for data encapsulation
D) A user-defined function
View AnswerA
8. What does a “constructor” do in a class?
A) It initializes an object
B) It combines methods
C) It destructs a class
D) It defines inheritance
View AnswerA
9. What is the purpose of a “destructor” in a class?
A) To initialize a class
B) To delete an object from memory
C) To create multiple objects
D) To modify a method
View AnswerB
10. In which type of diagram are classes and relationships between them represented?
A) Use case diagram
B) Class diagram
C) Sequence diagram
D) State diagram
View AnswerB
11. What is a sequence diagram used for in OOAD?
A) To model the dynamic behavior between objects
B) To represent static relationships between objects
C) To create the database structure
D) To define system requirements
View AnswerA
12. What does UML stand for?
A) Unified Modeling Language
B) Universal Method Language
C) User Modeling Language
D) Unified Management Layout
View AnswerA
13. What is the purpose of a use case diagram?
A) To show interactions between objects
B) To represent user requirements
C) To design a system’s architecture
D) To show the sequence of method calls
View AnswerB
14. What is a design pattern in software development?
A) A reusable solution to a common problem
B) A method of writing code
C) A tool for compiling code
D) A user interface feature
View AnswerA
15. Which design pattern ensures only one instance of a class?
A) Factory pattern
B) Observer pattern
C) Singleton pattern
D) Adapter pattern
View AnswerC
16. What is an abstract class in Object-Oriented Programming?
A) A class that cannot be instantiated directly and contains one or more abstract methods
B) A class with no attributes
C) A class that cannot be inherited
D) A class with no methods
View AnswerA
17. What is the observer pattern used for in OOAD?
A) To create objects dynamically
B) To notify multiple objects when a state changes
C) To manage object inheritance
D) To represent a sequence of actions
View AnswerB
18. What is the purpose of the factory method design pattern?
A) To define an interface for creating objects without specifying their concrete classes
B) To encapsulate object creation
C) To manage object destruction
D) To provide a way for multiple inheritance
View AnswerA
19. What is the difference between “overloading” and “overriding” in OOAD?
A) Overloading refers to multiple methods with the same name but different signatures, while overriding refers to redefining a method in a subclass
B) Overloading involves inheritance, while overriding does not
C) Overloading modifies the parent class, while overriding changes the child class
D) Overloading and overriding are the same
View AnswerA
20. What is the significance of the interface in Object-Oriented Programming?
A) It defines methods without specifying implementation
B) It manages memory allocation
C) It is used to create constructors
D) It defines object destructors
View AnswerA
21. What does a “state diagram” represent in UML?
A) The dynamic behavior of a single object across various states
B) Relationships between classes
C) Sequence of method calls
D) Use case relationships
View AnswerA
22. In OOAD, what is the role of the adapter pattern?
A) It converts the interface of a class into another interface that a client expects
B) It manages inheritance
C) It defines the object’s behavior
D) It organizes classes into hierarchies
View AnswerA
23. What does “delegation” mean in Object-Oriented Design?
A) Passing the responsibility of performing a task from one object to another
B) Inheriting methods from a parent class
C) Combining two or more classes
D) Encapsulating data within objects
View AnswerA
24. What is the purpose of the “proxy” design pattern?
A) To provide a placeholder for another object to control access to it
B) To convert one interface into another
C) To create new objects dynamically
D) To manage object inheritance
View AnswerA
25. What is meant by “message passing” in Object-Oriented Programming?
A) Objects communicate with each other by sending messages
B) Inheriting methods from another class
C) Combining data into a class
D) Modifying an object’s state
View AnswerA
26. What is the main benefit of using design patterns in software development?
A) They provide solutions to common problems
B) They increase system performance
C) They reduce the number of classes
D) They improve the user interface
View AnswerA
27. In OOAD, what is the composite design pattern used for?
A) To compose objects into tree structures to represent part-whole hierarchies
B) To create multiple classes
C) To define system requirements
D) To encapsulate object behavior
View AnswerA
28. What does the term “refactoring” mean in OOAD?
A) Improving the internal structure of the code without changing its external behavior
B) Writing new methods
C) Modifying object inheritance
D) Changing user interfaces
View AnswerA
29. What is an “interface segregation principle”?
A) Clients should not be forced to depend on interfaces they do not use
B) Objects should be segregated into separate classes
C) Inheritance should be minimized
D) Interfaces should be reused across all classes
View AnswerA
30. What is a “behavioral” design pattern in OOAD?
A) A pattern that defines how objects interact and communicate with each other
B) A pattern used to create new objects
C) A pattern to manage object hierarchies
D) A pattern for defining class inheritance
View AnswerA
31. What is the responsibility of a constructor in an object-oriented class?
A) To initialize the object and set up its initial state
B) To destroy an object after use
C) To manage memory allocation
D) To inherit properties from another class
View AnswerA
32. What is the advantage of using polymorphism in OOAD?
A) It allows different objects to be treated the same way based on a common interface
B) It eliminates the need for classes
C) It increases system performance
D) It minimizes the use of inheritance
View AnswerA
33. What is the command pattern used for in OOAD?