construtor java: this (.)

Por que a saída é "021"? Por que existem "0" e "1" (desde que "eu" recebo "2" por que ele muda para "1")?

public class C {
       protected int i;
       public C(int i){
               this(i,i);
               System.out.print(this.i);
               this.i=i;
}
      public C(int i, int j) {
               System.out.print(this.i);
               this.i=i+j;
}
       public C(){
              this(1);
              System.out.print(i);
}
      public static void main(String[] args) {
             C c=new C();
}}

questionAnswers(3)

yourAnswerToTheQuestion