Java講座

堅牢性を獲得する章
2.4. クラスの可視性
『目的』

クラスの可視性をきちんを見極めましょう。

『Before』

トップレベルのクラスにはpublicとpackage-privateの2つの可視性が設定できます。

これはpublicクラスです。
public class Hoge {
    :
}
publicとする必要があるのかいま一度考えてみましょう。
必要もないのに公開していたら、意図せずに外部から使われてしまうかもしれません。
そうなると、利用側の影響を無視することができなくなってしまいますね。
そうすると、publicにしたクラスは一生サポートし続けなければなりません。

『After』

他のパッケージから利用されることがないのであればpackage-privateクラスにしましょう。
class Hoge {
    :
}
パッケージに閉じた実装となり、外部からの利用による影響を気にする必要がなくなります。
気にせず修正・置き換え・削除ができるわけです。

さらに、package-privateとしたクラスが一つのクラスからしか利用されないのであれば、 そのクラスの、 privateな、ネストしたクラスにすることも検討できるでしょう。
class Hoge {
    :
    /* Hoge でしか使わないクラス */
    private class Foo {
        :
    }    
}

『まとめ』

クラスを不必要に外部に公開してしまうと面倒なことになりかねません。
なるべく閉じこめるように心がけましょう。
前のページ   次のページ

当ページ・当社へのご意見やご感想があればお手数ですが「お問い合わせ」までお願いいたします。
当社への就職をお考えの方は「採用情報ページ」までお願いいたします。
C言語を学びたい方は「C言語講座」もどうぞ。