1)All static variables
2)All final variables
3)All instance variables
4)Only final instance variables
5)Only final static variables
The answers are 1,2,3
2. Because inner class can access final automatic variables and global variables also. But they cant access the automatic variables if they are not final.
ex: public class TestClass
{
private int outervar;
private final int o1;
public void amethod(
String s, final int v)
{
String str;
class inner
{
s="hello"; //illegal because it is not final
v=5; //legal cause it is final
str="bye" //illegal
o1++;//legal cause class level variable
outervar++;//legal
}
}
}
Thanks
Vishal Shah
------------------
-----
SCJP2
-----