监控之snmpd 服务 包含cacti监控下不显示网卡信息的错误
2016-03-15 10:15
302 查看
适用情况:当一个抽象工厂要生产某种产品时,他只知道要生产的产品的接口,而不知道其实现是怎样的。产品可能有很多种实现。
解决方案:只定义抽象工厂生产该种产品的接口,而将实现留给实体工厂。不同的实体工厂知道怎样生产对应的产品。
类图:
GOF中的例子:
实际应用:实际应用太多了,个人觉得这个模式太普通,其实就是接口与实现相分离的OO思想以及多态的体现,没什么特别之处,系统(使用者)还是要自己构建具体工厂类来生产,只不过操作的引用是抽象工厂类而已。比如说Collection类的iterator()方法,就是工厂方法,它只是一个接口,其实现要由具体的HashSet, LinkedList的iterator()方法来实现。再比如SortedSet的comparator()方法也是由TreeSet的comparator()方法来实现。
与其它设计模式的比较:TBD
解决方案:只定义抽象工厂生产该种产品的接口,而将实现留给实体工厂。不同的实体工厂知道怎样生产对应的产品。
类图:
GOF中的例子:
实际应用:实际应用太多了,个人觉得这个模式太普通,其实就是接口与实现相分离的OO思想以及多态的体现,没什么特别之处,系统(使用者)还是要自己构建具体工厂类来生产,只不过操作的引用是抽象工厂类而已。比如说Collection类的iterator()方法,就是工厂方法,它只是一个接口,其实现要由具体的HashSet, LinkedList的iterator()方法来实现。再比如SortedSet的comparator()方法也是由TreeSet的comparator()方法来实现。
与其它设计模式的比较:TBD
相关文章推荐
- linux之shell学习:sort使用
- shell脚本--判断输入的ip是否正确
- org.apache.subversion.javahl.ClientException: Unsupported working copy format svn: This client is to
- 在串口下添加set和get命令(修改Linux内核代码)
- hadoop 异常 Inconsistent checkpoint fields
- Remote Desktop File Format
- Linux内存管理之页面回收
- Linux下pager-taglib分页中文搜索乱码
- linux运维工程师
- error while loading shared libraries xx.so处理方法
- eclipse luna + tomcatPluginV331 + tomcat8 插件配置
- Nginx 访问日志轮询切割
- Centos手动编写service命令脚本(运行原理)
- HBase应用场景、原理与基本架构
- linux下命令重启
- linux pid名字空间
- Linux安装与基础配置
- linux命令(chown、find)
- linux配置java环境变量
- nginx 优化