コンストラクタの事後条件はインスタンスへの参照が正しく設定されているかの一点であり、これはコンパイラ側が持つ責務です
フィールドの初期化についてはコンストラクタによるサポートがない限り、インスタンス生成時に呼び出し側が持つ責務となります
基本的に、絶対の要件を除いて任意の条件はメソッドの方に分離させ、静的メソッドなどを介して操作させる手法が主流です
コンストラクタはインスタンスの生成を目的に呼び出されます
この時publicなフィールドへ任意に初期値を設定可能な点をはじめ、インスタンスの設計は必ずしもコンストラクタの事後条件とは言えません
むしろコンストラクタの実装は条件というよりも方針に寄ると言えます
コンストラクタに担わせたい何かしらの動作がある場合には、メソッドで制御することが推奨されます