您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 管理学资料 > 深入浅出js面向对象编程
第4章面向对象编程主要内容4.1面向对象编程简介4.2如何自定义类(原型对象)4.3类的成员函数4.4prototype关键词4.5构造函数4.6面向对象三大特征—封装,继承,多态4.7闭包的概念4.1面向对象编程简介Js面向对象特征介绍Js是一种基于对象和事件驱动的脚本语言。它具有面向对象的特性:封装,继承和多态。在很多优秀的Ajax框架中,比如JQuery等,大量使用了js的面向对象特性。要使用好ext技术,javascript的高级特性及其面向对象语言特性是必须要掌握的。4.1面向对象编程简介Js中基本概念的明确:Js是一种基于对象的语言,所以遇到的所有东西几乎都是对象。基于对象和面向对象的说法从本质上并没有区别。因为Js中并没有类(class),而是叫做原型对象,因为这两个概念在编程中发挥的作用都是一样的,以后统一叫做类。4.1面向对象编程简介案例:编写一个猫类,类的名字叫做cat。4.2如何自定义类(原型对象)4.2.1使用构造函数来定义类(原型对象)4.2.2如何实例化对象4.2.3对象在内存中的存储机制4.2.4this关键词4.2.1使用构造函数定义类4.2.1使用构造函数定义类在js中,一切都是对象4.2.1使用构造函数定义类判断一个对象是不是person类型的方法:4.2.2如何创建对象实例试比较两段代码的不同:4.2.3对象在内存中的存储机制注意:Js还提供一种主动释放对象内存的方式:delete对象名.属性名//这样就会立即释放对象的属性空间4.2.4this关键词4.3类的成员函数给类添加成员函数实例:给类添加成员函数的几种方法:第一种:给类添加成员函数的方法:第二种:给类添加成员函数的方法:第三种:(注意:这种方法为每一个对象开辟自己的存储空间存储函数,如果实例化对象较多,要慎重使用!)思考题:请问此时输出结果是什么?(该知识点考察this的用法)4.4prototype关键词(原型法)存在问题:以上给类创建函数的办法存在一个问题,即每个对象都占用自己的存储空间。如果对象很多,则会影响程序效率。Js设计者提供了另外一个为对象绑定函数的方法:原型法。原型法绑定的方法可以被多个对象共享。4.4prototype关键词(原型法)4.4prototype关键词(原型法)注意:js中不支持函数的重载,同名函数将只运行最后一个定义的函数!!!上机练习:上机练习:4.5构造方法类定义小结:面向对象小结:4.6面向对象三大特征:抽象,封装,继承和多态4.6.1抽象4.6.2封装注意:前面学习过,通过prototype静态属性,给所有的对象添加方法,但这种方式不能去访问类的私有变量和方法。4.6.3继承Call及Apply的用法:Call及Apply的用法:函数重载案例:函数覆盖案例:4.6.4多态多态的案例:4.7闭包的概念
本文标题:深入浅出js面向对象编程
链接地址:https://www.777doc.com/doc-3966407 .html