搜索

首页  >  问答  >  正文

java - 如何方便某个类在以后的拓展中比较方便的添加属性?

假设有地图上有一个医院和公路两个标识,而这两个标识拥有属于自己的属性数据:
例如 医院有等级、建筑物数量、病人数量,占地面积、名字等属性;公路有名字、等级、长度、建成时间等属性。 即不同类型的地图标识有不同的属性数据,同时也需要考虑将来还会添加新的属性。
请问大家,能否说一个大概的设计思路(只是静态类图的设计思路)?
PS:我自己想的是通过装饰者模式来实现,但是那样的话在以后的扩展中每当添加一个属性时就要对原来的类再进行一次装饰,或者直接侵入原先设计好的类,添加属性。

天蓬老师天蓬老师2769 天前615

全部回复(3)我来回复

  • PHPz

    PHPz2017-05-27 17:43:12

    haha ,为何不用Dictionary类型,比如说使用map来存储键值对?

    回复
    0
  • 迷茫

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

    应该要符合开闭原则,一个实体类创建好后最好不要做修改,使用继承就可以了,在原来的属性上增加新的属性,但是又不破坏原来的结构

    回复
    0
  • ringa_lee

    ringa_lee2017-05-27 17:43:12

    对象组合优先于继承

    回复
    0
  • 取消回复