Saturday, 21 March 2009

Top-level and Inner Java Classes

Top level nested class

Non static inner class

Local class

Anonymous class

Declaration Context

As static class member

As non-static class member

In block with non-static context

In block with non-static context

Accessibility Modifiers

All

All

None

None

Outer instance

No

Yes

Yes

Yes

Direct Access to enclosing context

Static members in enclosing context

All members in enclosing context

All members in enclosing context + local final variables

All members in enclosing context + local final variables

Defines static or non-static members

Both static and non-static

Only non-static

Only non-static

Only non-static

Constructors

Yes

Yes

Yes

No

Can use extends or implements clauses?

Yes

Yes

Yes

No

No comments:

Post a Comment