2005-11-03から1日間の記事一覧

継承はカプセル化を破壊する

で、継承をなぜ使ってはいけないかの具体的な理由がコレ。Effective Javaの項目14,15を参照。 簡単に言えば、calotocenがハマったように、overrideは継承元の実装に依存している。 だから、publicな(他のパッケージ(=実装者)から見れる)クラスのfinalでな…

継承の乱用

http://d.hatena.ne.jp/calotocen/20051103いまさらあえて言うまでも無いけど、「ボールの位置を管理するクラス」がPointを継承するというのは間違い。侍 is a 人 だから 侍 extends 人 とするのと同じぐらいのミス。継承が表現する「is-a」は、完全なサブセ…

このブログに乗せているコードは引用を除き CC0 1.0 で提供します。