初期化つきインスタンスフィールドについてなのですが、
必ず上から下に向かって初期化が実行されるという保証はないのでしょうか?
(初期化のために下で宣言されている変数を使用してはいけない
というのはわかったのですが)

例えば下の様なコードがあった場合、x生成のコンストラクタには0が
引数に渡されて、y生成時には1が渡される保証はないのでしょうか?

class Foo {
 private int i = 0;
 private Bar x = new Bar(i++);
 private Bar y = new Bar(i++);
  :
}