文章详情页
java - 如何方便某个类在以后的拓展中比较方便的添加属性?
浏览:47日期:2023-11-16 15:20:16
问题描述
假设有地图上有一个医院和公路两个标识,而这两个标识拥有属于自己的属性数据:例如 医院有等级、建筑物数量、病人数量,占地面积、名字等属性;公路有名字、等级、长度、建成时间等属性。 即不同类型的地图标识有不同的属性数据,同时也需要考虑将来还会添加新的属性。请问大家,能否说一个大概的设计思路(只是静态类图的设计思路)? PS:我自己想的是通过装饰者模式来实现,但是那样的话在以后的扩展中每当添加一个属性时就要对原来的类再进行一次装饰,或者直接侵入原先设计好的类,添加属性。
问题解答
回答1:haha ,为何不用Dictionary类型,比如说使用map来存储键值对?
回答2:应该要符合开闭原则,一个实体类创建好后最好不要做修改,使用继承就可以了,在原来的属性上增加新的属性,但是又不破坏原来的结构
回答3:对象组合优先于继承
标签:
java
上一条:java常用设计模式下一条:java - 打印电子面单
相关文章:
1. 为什么我ping不通我的docker容器呢???2. mysql - JAVA怎么实现一个DAO同时实现查询两个实体类的结果集3. javascript - vue中父组件向子组件传递Object时,如何避免TypeError?4. golang - 用IDE看docker源码时的小问题5. mac连接阿里云docker集群,已经卡了2天了,求问?6. mysql - sql 语句更改表结构,添加多个列,怎么写?7. docker绑定了nginx端口 外部访问不到8. docker gitlab 如何git clone?9. javascript - 怎么设计项目的返回码,让不同的返回码代表不同的含义?10. html - IOS二维码识别问题
排行榜