Page | 1
Object-Oriented Programming [Java]
Questions and Answers (Expert Solutions)
Q: Three Fundamental Features of OOP, 🗹🗹: Encapsulation
Inheritance
Polymorphism
Q: Encapsulation, 🗹🗹: An object-oriented technique in which the internal details of
an object are "hidden" in order to simplify their use and reuse.
Q: Inheritance, 🗹🗹: A relationship between two classes in which one class ( the
subclass) inherits all of the properties and capabilities of another ( the superclass)
Q: Polymorphism, 🗹🗹: Declaring a variable to have one type while it refers to an
object of a subclass of that type.
Q: Object-Oriented Analysis, 🗹🗹: A means of determining what aspects of a given
problem can be viewed as objects in an eventual object-oriented design.
Q: Object-Oriented Design, 🗹🗹: A software design method that models the
characteristics of abstract or real objects using classes and objects.
Q: Object-Oriented Programming, 🗹🗹: A programming technique that features
objects, classes, encapsulation, interfaces, polymorphism, and inheritance.
Q: Cohesion, 🗹🗹: Degree to which responsibilities of a given component are a
meaningful unit
, Page | 2
Q: Cohesion vs Coupling, 🗹🗹: Greater cohesion reflects better design. Less coupling
reflects better design.
Q: Coupling, 🗹🗹: Degree to which one component must directly access the data of
another component.
Q: Roles, 🗹🗹: Sets of Responsibilities
Q: Roles vs. Objects, 🗹🗹: They are the same when a given role is always played by
the same object type.
Q: Software Components, 🗹🗹: Reuse of code (e.g. Visual Basic, JavaBean)
Q: Frameworks, 🗹🗹: Reuse of "plug-in" code (e.g. Java Swing)
Q: Design Paterns, 🗹🗹: Reuse of Design
Q: Agile Software Development, 🗹🗹: A philosophy of software development that
embraces flexibility and agility. The design "evolves".
Q: 3 Means of Object-Object Access, 🗹🗹: - Parameter Passing
- Object declared in method
- Object is a member of another object through composition [subtype]
Q: Is-a Relationship, 🗹🗹: Describes an inheritance relationship between two classes
Q: Has-a Relationship, 🗹🗹: The relationship demonstrated by a class that contains
another class.
Q: Uses-a Relationship, 🗹🗹: Implemented-In-Terms-Of Relationship
Object-Oriented Programming [Java]
Questions and Answers (Expert Solutions)
Q: Three Fundamental Features of OOP, 🗹🗹: Encapsulation
Inheritance
Polymorphism
Q: Encapsulation, 🗹🗹: An object-oriented technique in which the internal details of
an object are "hidden" in order to simplify their use and reuse.
Q: Inheritance, 🗹🗹: A relationship between two classes in which one class ( the
subclass) inherits all of the properties and capabilities of another ( the superclass)
Q: Polymorphism, 🗹🗹: Declaring a variable to have one type while it refers to an
object of a subclass of that type.
Q: Object-Oriented Analysis, 🗹🗹: A means of determining what aspects of a given
problem can be viewed as objects in an eventual object-oriented design.
Q: Object-Oriented Design, 🗹🗹: A software design method that models the
characteristics of abstract or real objects using classes and objects.
Q: Object-Oriented Programming, 🗹🗹: A programming technique that features
objects, classes, encapsulation, interfaces, polymorphism, and inheritance.
Q: Cohesion, 🗹🗹: Degree to which responsibilities of a given component are a
meaningful unit
, Page | 2
Q: Cohesion vs Coupling, 🗹🗹: Greater cohesion reflects better design. Less coupling
reflects better design.
Q: Coupling, 🗹🗹: Degree to which one component must directly access the data of
another component.
Q: Roles, 🗹🗹: Sets of Responsibilities
Q: Roles vs. Objects, 🗹🗹: They are the same when a given role is always played by
the same object type.
Q: Software Components, 🗹🗹: Reuse of code (e.g. Visual Basic, JavaBean)
Q: Frameworks, 🗹🗹: Reuse of "plug-in" code (e.g. Java Swing)
Q: Design Paterns, 🗹🗹: Reuse of Design
Q: Agile Software Development, 🗹🗹: A philosophy of software development that
embraces flexibility and agility. The design "evolves".
Q: 3 Means of Object-Object Access, 🗹🗹: - Parameter Passing
- Object declared in method
- Object is a member of another object through composition [subtype]
Q: Is-a Relationship, 🗹🗹: Describes an inheritance relationship between two classes
Q: Has-a Relationship, 🗹🗹: The relationship demonstrated by a class that contains
another class.
Q: Uses-a Relationship, 🗹🗹: Implemented-In-Terms-Of Relationship