I get the order but not satisfying requirements, can anyone clarify , what is the reason?
package com.codegym.task.task15.task1524;
/*
Order of loading variables
*/
public class Solution {
static {
init();
}
static {
System.out.println("static block");
}
{
System.out.println("Non-static block");
printAllFields(this);
}
public int i = 6;
public String name = "First name";
public Solution() {
System.out.println("Solution constructor");
printAllFields(this);
}
public static void init() {
System.out.println("static void init()");
}
public static void main(String[] args) {
System.out.println("public static void main");
Solution s = new Solution();
}
public static void printAllFields(Solution obj) {
System.out.println("static void printAllFields");
System.out.println(obj.i);
System.out.println(obj.name);
}
}