Hi
I have simple question.I know the static initializer block will run first when the class is loaded.But when the value of static field is assigned after the initializer block
for eg.
class{
static {
stint = 100;
stint1=1000;
}
private static int stint = 10;
private static int stint1;
public static void main(
String[] args) {
System.out.println(stint);
System.out.println(stint1);
}
}
If i run this class why it is showing the outputp as 10 and 1000 instead of 100 and 1000.
If the order is matter i.e (first initializer block then static variables) then it should display 0 for stint1 right?
But if i place both the private statements before the static block then i m getting output as 100 and 1000?
Please Explain.