Order of the execution members
hi, friends
take the following
publicclass MyC{
publicstaticvoid main(String[] args){
MyC obj=new MyC(l);
}
staticint i=5;
staticint l;
int j=7;
int k;
public MyC(int m){
System.out.println(i+" "+j+" "+k+" "+l+" "+m);
}
{j=70; l=20;}
static{i=50;}
}
the output is50 700 20 0
my question is about m parameter, why was it zero?
I expected that it would be 20, because I think the order of the execution of those members is:
1- static members (variables and blocks)
2- instance members (variables and blocks)
3- constructors, no matter whether default or non-default
is that correct?

