Reflection API · interview question
How can a mini-framework dynamically invoke a private method 'calculateDiscount' in an e-commerce application?
Multiple choiceHardchapter-16-curatedpremiumreflection-apibreaking-encapsulation
Answer and explanation
Correct answer
A. Use getDeclaredMethod, setAccessible(true), and invoke
Why
To dynamically invoke a private method, you retrieve it using getDeclaredMethod, call setAccessible(true) to bypass access checks, and then use invoke to execute the method.
Test yourself on Reflection API
A free test with instant, explained results. No account needed.
More Reflection API questions
- Given using Class.forName("com.example.MyClass") in Java, what outcome should you expect?
- Which method would you use to check if a class is an interface using Reflection?
- In what scenario would you prefer reflection for method invocation over direct method calls?
- Which of the following is NOT a drawback of using Java Reflection?
- If you use Method.invoke() to call a private method, what must you do first?
- How does Java's reflection API impact type safety?