そもそもIsInitなんてものが必要な時点でなあ
このメソッドはIsInitがtrueの場合しか使っちゃいけないという紳士協定があるわけ?
それをOKとするなら、IsInitのsetはpublicにしちゃって同様に紳士協定でいいと思うけどね