Object-oriented programming · interview question
In designing a payment processing module, you need to handle credit card and PayPal transactions. Why might you choose composition over inheritance to model this?
Multiple choiceMediumchapter-5-curatedpremiumoopcomposition-vs-inheritance
Answer and explanation
Correct answer
C. Composition allows flexibility to add new payment methods without altering existing code.
Why
Composition allows each payment method to be a separate component that can be easily replaced or extended without modifying the existing hierarchy. This leads to more maintainable and flexible code, adhering to the open/closed principle.
Test yourself on Object-oriented programming
A free test with instant, explained results. No account needed.
More Object-oriented programming questions
- What happens if a subclass does not implement all abstract methods from its abstract superclass?
- What does the 'this' keyword refer to within an instance method of a class?
- Which Java keyword would you use to declare an abstract class in Java?
- Which statement correctly creates an instance of the 'Product' class?
- How does using interfaces in Java promote flexibility in application design?
- In Java, why might composition be preferred over inheritance when designing a class to calculate discounts for…