javascript - js创建一个对象使用工厂模式和寄生模式究竟有什么区别?
PHP中文网
PHP中文网 2017-04-11 12:55:42
0
2
377

如题,在看高程3这本书的面向对象的程序设计这一章时,有一小节专门就是介绍创建对象的7种方式,看完之后有一个疑惑,那就是工厂模式和寄生模式究竟有什么区别?
书中也很明确的说明了,两者除了调用的时候有没有用new关键字之外完全相同。那这个用意是什么呢?按道理,是否通过new生成的实例对象,最终的结果都是一样的,因为最后返回的是同一个东西。
所以,这两者的区别到底是什么呢?很疑惑,在具体的使用当中,什么时候需要用工厂模式,什么时候应该用寄生模式?

PHP中文网
PHP中文网

认证高级PHP讲师

全部回复(2)
黄舟

其实社区本来就有很好的回答,相信你没搜索过,养成先搜索后提问的习惯。
https://segmentfault.com/q/10...

洪涛

笼统得讲,实际就是 你是要通过new 来返回个对象,还是通过 你在函数里面写个对象再把他返回出来。 new的话就有个 this指向的问题,但实际跟前面的函数方法,本质是一样的,这个this 你可以理解为就是 你用new的方式返回出来的那个对象 他会继承构造函数里面的属性方法,极其原型里面的相应属性方法。链接描述

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!