今こういう理解をしているんですが、間違いがあれば指摘していただけないでしょうか。

1.実行される順番は、staticイニシャライザ → インスタンスイニシャライザ → インスタンスコンストラクタ。
2.プリミティブ型とString型は定数プールに作られて、それを参照するためのアドレスがスタックに置かれる。
3.参照型はヒープに実体が作られて、それを参照する為のアドレスがスタックに置かれる。
4.Stringや参照型を比較する際、==では、実体を指しているアドレスの値が同じか比較。 equasでは、実体の持つ情報(文字列やプロパティの中身)が同じかどうか比較。