コンストラクタで初期化して、失敗したら例外投げればいいのでは?