Core Java · interview question
Consider the following code snippet. What will be the output when 'new Customer().getDiscount();' is executed?
Multiple choiceMediumchapter-5-curatedpremiumcore-javacode-reading-with-related-types
abstract class User {
abstract String getDiscount();
}
class Customer extends User {
@Override
String getDiscount() {
return "10%";
}
}Answer and explanation
Correct answer
C. 10%
Why
In this scenario, the method 'getDiscount()' overrides the method from the superclass 'User'. The 'Customer' class's 'getDiscount()' method is invoked, returning '10%'. This demonstrates method overriding.
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?