文章详情页
java - 如何方便某个类在以后的拓展中比较方便的添加属性?
问题描述
假设有地图上有一个医院和公路两个标识,而这两个标识拥有属于自己的属性数据:例如 医院有等级、建筑物数量、病人数量,占地面积、名字等属性;公路有名字、等级、长度、建成时间等属性。 即不同类型的地图标识有不同的属性数据,同时也需要考虑将来还会添加新的属性。请问大家,能否说一个大概的设计思路(只是静态类图的设计思路)? PS:我自己想的是通过装饰者模式来实现,但是那样的话在以后的扩展中每当添加一个属性时就要对原来的类再进行一次装饰,或者直接侵入原先设计好的类,添加属性。
问题解答
回答1:haha ,为何不用Dictionary类型,比如说使用map来存储键值对?
回答2:应该要符合开闭原则,一个实体类创建好后最好不要做修改,使用继承就可以了,在原来的属性上增加新的属性,但是又不破坏原来的结构
回答3:对象组合优先于继承
标签:
java
上一条:java常用设计模式下一条:java - 打印电子面单
相关文章:
1. docker网络端口映射,没有方便点的操作方法么?2. javascript - 静态页面引公共头尾文件,js怎么写吖?3. docker 17.03 怎么配置 registry mirror ?4. javascript - 读取页面源码,页面中所有的换行都被当成<br/>读取出来 了,,求解应该怎么让它被正确的解析5. java - 3个dao的数据根据请求参数选择一个映射到一个url上,怎么写比较好?6. html5 - 百度Ueditor代码高亮和代码段滚动条冲突是怎么回事?7. javascript - 关于一段 for 循环代码执行顺序的问题8. javascript - JS中如何实现 DIV内部和鼠标的距离9. javascript - vue 数据更新了。但是dom没有更新,,,,,如图10. docker绑定了nginx端口 外部访问不到
排行榜