ホームページ  >  に質問  >  本文

java - 将来の拡張でクラスに属性を追加しやすくするにはどうすればよいですか?

地図上に病院と道路という 2 つの標識があり、これら 2 つの標識には独自の属性データがあるとします。
たとえば、病院には、グレード、建物の数、患者数、床面積、名前など ;道路には名前、勾配、長さ、建設時期などの属性があります。つまり、マップ識別子の種類が異なれば属性データも異なり、将来的に新たな属性が追加されることも考慮する必要がある。
皆さんにお聞きしたいのですが、大まかな設計アイデア(静的クラス図の設計アイデアだけ)を教えていただけますか?
PS: 私自身のアイデアは、デコレーター パターンを通じて実装することですが、その場合、将来の拡張機能で属性が追加されるたびに、元のクラスを再度装飾する必要があるか、最初に設計されたクラスが直接装飾されることになります。侵略されました。、属性を追加します。

天蓬老师天蓬老师2702日前531

全員に返信(3)返信します

  • PHPz

    PHPz2017-05-27 17:43:12

    はは、Dictionary タイプを使用してはいかがでしょうか。たとえば、マップを使用してキーと値のペアを保存してはいかがでしょうか。

    返事
    0
  • 迷茫

    迷茫2017-05-27 17:43:12

    エンティティ クラスの作成後は、元の構造を破壊せずに元の属性に新しい属性を追加するだけで変更しないことが最善です。

    返事
    0
  • ringa_lee

    ringa_lee2017-05-27 17:43:12

    オブジェクトの合成は継承より優先されます

    返事
    0
  • キャンセル返事