Home » Java Programming » Declarations and Access Control

Which is valid in a class that extends class A? class A { protected int method1(int a, int b) { return 0; } }

Correct Answer: public int method1(int a, int b) {return 0; }

Explanation:

Option A is correct - because the class that extends A is just simply overriding method1.


Option B is wrong - because it can't override as there are less access privileges in the subclass method1.


Option C is wrong - because to override it, the return type needs to be an integer. The different return type means that the method is not overriding but the same argument list means that the method is not overloading. Conflict - compile time error.


Option D is wrong - because you can't override a method and make it a class method i.e. using static.


← Previous Question Next Question→

More Questions from Declarations and Access Control

Discussion & Comments

No comments yet. Be the first to comment!
Join Discussion