Multiple choice

Which is true about a method-local inner class?

  1. It must be marked final.

  2. It can be marked abstract.

  3. It can be marked public.

  4. It can be marked static.

Reveal answer Fill a bubble to check yourself
B Correct answer
Explanation

Option B is correct because a method-local inner class can be abstract, although it means a subclass of the inner class must be created if the abstract class is to be used (so an abstract method-local inner class is probably not useful). Option A is incorrect because a method-local inner class does not have to be declaredfinal (although it is legal to do so). C and D are incorrect because a method-local inner class cannot be made public(remember-you cannot mark any local variables as public), or static.