Core Java · interview question
Consider the following method: boolean applyDiscount(double price, double discount). Which of the following changes would help it adhere to the single responsibility principle?
Multiple choiceHardchapter-1-curatedpremiumcore-javamethods
double applyDiscount(double price, double discount) { return price - (price * discount); }Answer and explanation
Correct answer
A. Return the new price instead of a boolean
Why
The method should return the new price instead of a boolean to follow the single responsibility principle. Its task is to apply a discount, so it should directly handle the price calculation and return the discounted price, not perform multiple tasks like printing or validating.
Test yourself on Core Java
A free test with instant, explained results. No account needed.
More Core Java questions
- In a console shopping cart application, why might you separate input handling from calculations?
- What happens if a subclass does not implement an abstract method from its superclass?
- Why would you choose to use a switch statement instead of multiple if-else statements for handling order status?
- Which part of the following code is responsible for avoiding an off-by-one error?
- Why can using overly complex methods in an e-commerce application become a problem in production code?
- How can a class implementing an interface with a default method call that method from within an overridden method?