浅析javascript实现基于原型对象的“继承”

浅析javascript实现基于原型对象的“继承”

ID:28184788

大小:17.57 KB

页数:4页

时间:2018-12-08

浅析javascript实现基于原型对象的“继承”_第1页
浅析javascript实现基于原型对象的“继承”_第2页
浅析javascript实现基于原型对象的“继承”_第3页
浅析javascript实现基于原型对象的“继承”_第4页
资源描述:

《浅析javascript实现基于原型对象的“继承”》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、为了确保“教学点数字教育资源全覆盖”项目设备正常使用,我校做到安装、教师培训同步进行。设备安装到位后,中心校组织各学点管理人员统一到县教师进修学校进行培训,熟悉系统的使用和维护。浅析JavaScript实现基于原型对象的“继承”  摘要:概述JavaScript实现继承的机制,对比基于类的继承,通过实例说明原型继承的特点,提出一个改进的“寄生组合模式”,使读者实现原型继承变得游刃有余。  关键词:JavaScript;原型继承;构造函数;原型对象  中图分类号:TP311文献标识码:A文章编号:1009--0091-02  Abstract:OverviewtheJavaSc

2、ript’simplementationofthemechanismontheinheritance,comparetoBasedontheclassofinheritance,explaintheprototypeofinheritance’scharacteristicsthroughexamples,proposeanimproved“parasiticcombinationmode”,andenablethereaderstorealizetheprototypeofinheritancebecometodoajobwithskillandease.  Keyword

3、s:JavaScript,prototypeofinheritance,constructor,prototypeofobject  1概述为了充分发挥“教学点数字教育资源全覆盖”项目设备的作用,我们不仅把资源运用于课堂教学,还利用系统的特色栏目开展课外活动,对学生进行安全教育、健康教育、反邪教教育等丰富学生的课余文化生活。为了确保“教学点数字教育资源全覆盖”项目设备正常使用,我校做到安装、教师培训同步进行。设备安装到位后,中心校组织各学点管理人员统一到县教师进修学校进行培训,熟悉系统的使用和维护。  JavaScript是面向Web的编程语言,其高端、动态以及面向对象的编程

4、风格,使得JavaScript已经从一门简单的脚本语言进化成为一门强大的编程语言,其基于原型的继承风格,使用起来非常灵活、高效,但对于初学者,要准确理解原型对象及其继承机制还是比较困难,本文就JavaScript原型继承的方式进行了介绍,并结合实例进行分析。  2基于类的继承  首先,面向对象编程语言是基于类的语言,以Java为例,Java是基于类的语言,在基于类的语言中,对象是类的实例,并且一个类可以从另一个类继承。那么,在这些基于类的语言中,实现继承的好处:1)提高代码重用性高。如果我们新创建的类与已有的类有绝大部分相类似,则没有必要再重新定义这个完整的类。这样做可以实现

5、代码的重用,大大减少了软件开发的成本。2)继承可以实现面向对象的“多态”特性。程序员可以将子类的对象直接赋值给父类的引用,无需再编写显式的类型转化。既减轻了工作量又保证了类型系统在安全上的优势。如例1所示代码,这是Java中实现继承的语法,classB从classA继承,子类B的对象就继承了父类A的所有非私有化成员。  3基于原型的继承  原型对象为了充分发挥“教学点数字教育资源全覆盖”项目设备的作用,我们不仅把资源运用于课堂教学,还利用系统的特色栏目开展课外活动,对学生进行安全教育、健康教育、反邪教教育等丰富学生的课余文化生活。为了确保“教学点数字教育资源全覆盖”项目设备正

6、常使用,我校做到安装、教师培训同步进行。设备安装到位后,中心校组织各学点管理人员统一到县教师进修学校进行培训,熟悉系统的使用和维护。  在JavaScript中,类的所有实例对象都从同一个原型对象上继承属性。因此,原型对象是其核心。早期使用一种所谓的“工厂模式”,即通过定义函数返回一个新创建的对象,后者继承自某个原型对象。如例2所示代码,函数inherit返回了一个继承自原型对象p的新对象。此种方法并不常用,JavaScript还可以通过构造函数来创建并初始化对象,只不过JavaScript没有类定义和特殊的构造器定义,需要程序员自己定义一个构造函数来创建属性,而所有的函数都

7、可以被用来定义构造函数。如例3所示代码,在JavaScript中,只要创建一个新函数,就会根据一组特定规则为该函数创建一个prototype属性,而这个属性指向函数的原型对象。在默认情况下,原型对象会自动获得一个constructor属性,而这个属性包含一个指向prototype属性所在函数对象的指针。当一个函数对象被创建时,function构造器产生的函数对象会运行代码:“={constructor:this};”。  如图1所示,展现了构造函数,原型对象以及实例对象之间的关系。实例对象f指向原型对象

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。