Hello World
Hello World

Reputation: 983

Why can't i have an access specifier in a method local Inner class?

Why Method Local Inner class cannot be public? I know it is useless to make them private but why not public? Is that because Method Local Inner is also treated as local variables? As local variables cannot be public. Am i going right or missing something?

public class OuterClass {
   public void outerMethod() {
   public class Inner {  // having problem here
    ... 
    }
  }
 }

Upvotes: 1

Views: 187

Answers (1)

Sotirios Delimanolis
Sotirios Delimanolis

Reputation: 280102

Since it is declared within the method body, ie. it's a local class, you can't refer to it by name anywhere else in your code, only in the method body itself following its declaration. It is therefore pointless for it to have an access modifier.

Upvotes: 3

Related Questions