设计模式知识连载(9)---继承_5:如虎添翼-寄生式继承
来源:互联网 发布:数据分析金融分析就业 编辑:程序博客网 时间:2024/05/16 14:05
<body><h3>设计模式知识连载(9)---继承_5:如虎添翼-寄生式继承</h3><p> 这是对原型继承的第二次封装,</p><script type="text/javascript"> /** * 寄生式继承--案例1: */ // 声明基对象 var book = { name : 'js_book', alikeBooks : ['css_book', 'html_book'] } ; // 封装类式继承 function inheritObject(o) { // 声明一个过度函数对象 function F() {} ; // 过度对象的原型继承父对象 F.prototype = o ; // 返回过度对象的一个实例,该实例的原型继承了父对象 return new F() ; } ; function creatBook(obj) { // 通过原型继承方式创建新对象 var o = new inheritObject(obj) ; // 拓展新对象 o.getName = function() { console.log(name) ; } ; // 返回拓展后的新对象 return o ; } ; var cb1 = new creatBook(book) ; var cb2 = new creatBook(book) ; console.log('修改前的数据:--------------') ; console.log('cb1:', cb1) ; console.log('cb2:', cb2) ; console.log('cb1.name:', cb1.name) ; console.log('cb1.alikeBooks', cb1.alikeBooks) ; console.log('cb2.name:', cb2.name) ; console.log('cb2.alikeBooks', cb2.alikeBooks) ; console.log('修改后的数据:--------------') ; cb1.name = 'java_book' ; cb1.alikeBooks.push('xml_book') ; console.log('cb1:', cb1) ; console.log('cb2:', cb2) ; console.log('cb1.name:', cb1.name) ; console.log('cb1.alikeBooks', cb1.alikeBooks) ; console.log('cb2.name:', cb2.name) ; console.log('cb2.alikeBooks', cb2.alikeBooks) ;</script></body>
阅读全文
0 0
- 设计模式知识连载(9)---继承_5:如虎添翼-寄生式继承
- 设计模式知识连载(10)---继承_6:终极继承者-寄生组合式继承
- 设计模式知识连载(11)---继承_7:多继承
- 设计模式知识连载(5)---继承_1:子类的原型对象-类式继承
- 设计模式知识连载(6)---继承_2:创建即继承-构造函数继承
- 设计模式知识连载(7)---继承_3:优点结合-组合继承
- 设计模式知识连载(8)---继承_4:洁净的继承者-原型式继承
- JavaScript继承,寄生式继承
- JavaScript 继承---寄生式继承
- 寄生式继承
- JavaScript继承基础讲解(原型链、借用构造函数、混合模式、原型式继承、寄生式继承、寄生组合式继承)
- javascript 的 继承(五) 之 寄生式继承
- 【JavaScript学习】面向对象的程序设计(7):寄生式继承和寄生组合式继承
- js继承5之-----寄生式继承
- 数据库模型设计连载之(继承模式 )
- JS之理解组合继承模式和寄生式组合继承的区别
- [js高手之路]设计模式系列课程-组合模式+寄生组合继承实战新闻列表
- [js高手之路]设计模式系列课程-组合模式+寄生组合继承实战新闻列表
- bootstrap-paginator分页插件
- Spring注解@Resource和@Autowired区别对比
- 26. Remove Duplicates from Sorted Array
- Notepad++ Python/C++ 控制台print/cout requests utf-8乱码解决方案
- bzoj 3747: [POI2015]Kinoman (线段树+预处理)
- 设计模式知识连载(9)---继承_5:如虎添翼-寄生式继承
- swing
- oracle单行函数练习题
- hdu 2059 龟兔赛跑(dp)
- openwrt makefile
- 抽象类和接口的区别
- 《数字技术》连载14: 第2章 数字器件 第9节 T 触发器
- Linux 忘记 用户名密码
- opencv:图像读取、保存、尺度变换、二值化、腐蚀和膨胀