第20章面向对象编程—JavaScript中的.ppt
《第20章面向对象编程—JavaScript中的.ppt》由会员分享,可在线阅读,更多相关《第20章面向对象编程—JavaScript中的.ppt(17页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第20章 面向对象编程JavaScript中的类与继承上一章讲述了如何使用JavaScript向HTML元素对象中添加新的属性和方法。通过综合以前章节的知识点,实现一个支持拖动、缩放、最大化和最小化的模拟窗口特效。同时还讲述了如何书写可以兼容“Fire Fox”浏览器的代码。本章将更加深入面向对象的编程概念,讲述如何在JavaScript脚本中应用面向对象方法的编程思想。20.1 面向对象编程简介随着计算机应用的发展,软件正变得越来越大型化。与之相对应的,程序设计与编写的思路也在逐渐的改变着。面向对象(“Object Oriented”,简写为“OO”)的概念自上个世纪90年代开始流行,直至今
2、天,已经成为程序员编写程序的指导思想。20.1.1 传统编程方法的不足最初人们使用的编程方法很简单:需要执行什么过程,就按照其逻辑编写相应代码就可以了。例如需要执行一个四则运算,那么就按照四则运算的法则,逐个对操作数进行操作。这种编程方式被称作过程型编程(PP)。但是在代码量逐渐增大后,人们发现,常常需要重复编写同样的功能模块,为了减少不必要的工作量,函数(“function”)和子例程(“sub”)诞生了。人们将某些过程编写为一个固定的功能代码段,接受固定数量的参数或者不需要参数,执行指定的过程,可能返回计算的结果或无返回值。这样的编程方式被称作函数型编程(FP)。在源代码长度超过10000
3、行的大型应用程序中,即使是函数型编程也逐渐变得很难应用。各种函数之间错综复杂的关系使得项目的逻辑变得很难理解。在修改了其中某个模块后,造成的冲突范围很难控制。20.1.2 面向对象的基本概念面向对象的编程(“Object Oriented Programing”,简写为“OOP”)方法可以克服上面提到的这些问题,这也是为什么这种思想这么收到程序员欢迎的原因。首先需要读者理解的是,面向对象编程是一种程序设计的思想,是一种实现软件工程的工具,而不是程序编写的目的。也可以说,面向对象是程序员的一种“世界观”,程序员把需要解决的问题抽象成“方法”、“模块”还是“对象”,是“PP”、“FP”和“OOP”
4、的根本区别。20.1.3 面向对象编程的特征面向对象编程具有一些“PP”和“FP”所没有的特征:(1)对象唯一性。每个对象都有自身唯一的标识,通过这种标识,可找到相应的对象。在对象的整个生命期中,它的标识都不改变,不同的对象不能有相同的标识。(2)分类性。分类性是指将具有一致的数据结构(属性)和行为(操作)的对象抽象成类。(3)继承性。继承性是子类自动共享父类数据结构和方法的机制,这是类之间的一种关系。(4)多态性(多形性)。多态性指相同的操作或函数、过程可作用于多种类型的对象上并获得不同的结果。20.1.4 面向对象编程的要素面向对象编程的要素有:(1)抽象。抽象是指强调实体的本质、内在的属
5、性。在系统开发中,抽象指的是在决定如何实现对象之前的对象的意义和行为。使用抽象可以尽可能避免过早考虑一些细节。(2)封装性(信息隐藏)。封装性是保证软件部件具有优良的模块性的基础。(3)共享性。面向对象技术在不同级别上促进了共享:(4).强调对象结构而不是程序结构20.2 JavaScript中的类JavaScript是一种基于对象的语言,其与“面向对象”有着少许的不同。在真正的面向对象的语言中,例如“C+”或“Java”,有着用于定义“类”的关键字“Class”,也有着“Private”、“Public”等关键字定义属性和方法的私有与公有。在JavaScript中,“类”的实现是直接通过函数
6、实现的。20.2.1 JavaScript中类的构造前面说过,类是对具体对象的抽象。在JavaScript中,使用“function”来构造类。例如:function User()/用户类 this.name;/用户的姓名 this.sex;/用户的性别函数“User”就定义了一个描述用户对象的类。然后可以用:hutia=new User();20.2.2 JavaScript类的属性和方法在JavaScript的类构造函数中,通过“this”关键字向类中添加属性和方法。例如前面给出的“User”类中,使用“var this.name;”来声明一个属性。类中方法的添加与其类似,例如:funct
7、ion User()/用户类 this.name;/用户的姓名 this.login=function(password)/用户的登录方法 /类的方法 alert(“我在执行登录操作,密码是:”+password);20.2.3 JavaScript类的原型“prototype”所有的JavaScript均具有属性“prototype”。此属性指向构建对象的原型。在使用关键字“new”和类的构造函数来构造新对象实例时,可以使用“prototype”来向类中添加新的属性和方法。也就是说代码.htm是一个使用“prototype”的例子。20.3 JavaScript的封装与继承面向对象编程中,比
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第20章 面向对象编程JavaScript中的 20 面向 对象 编程 JavaScript 中的
限制150内