Kartik, I don't think you are correct on your reasonings. I'll give it a try.
A. False � d1 is an instances variable, and static methods cannot access instance variables.
B. False � Same as above, the method is static, d1 is not.
C. True � Both are instance variable or methods, neiter are static, everything is ok.
D. False � Inner class is static, so the rules of static methods accessing instance variables applies again. When it comes to static inner classes, think of it as a static method.
E. True � You can have abstract inner classes, and there are no accessibility issues here.
Bill
PS. Thanks Mukti for posting these while the Sun's site is down.

[This message has been edited by bill bozeman (edited January 22, 2001).]