zoukankan      html  css  js  c++  java
  • 四、javascript中的原型

    prototype是javascript最特别的地方之一。无论是实现javascript的面向对象还是继承,使用prototype都必不可少。

    原型表示对象的原始状态,javascript中的每个对象都有一个prototype属性,但是只有function类型的prototype属性可以使用脚本直接操作。

    prototype本身一个是Object类型。

    prototype就是C#类中的实例方法和实例属性。

    function staticClass(){};

    staticClass.staticMethod = function() {alert("static method")};

    staticClass.prototype.instanceMethod = function(){"instance method"};动态方法要使用prototype原型属性。

    实例方法需要实例化后才能调用:var instance = new staticClass();

    instance.instanceMethod();使用prototype除了可以声明实例方法,也可以声明实例属性。

    动态原型方法的精髓在于使用prototype声明实例方法,使用this声明实例属性。

    使用原型链实现继承

    GoodCar.prototype = new Car();

    var goodCar = new GoodCar();

    goodCar.showColor();

    实现了继承以后,还需要实现自己的run()方法,同样使用prototype实现。

    function GoodCar (){}

    GoodCar.prototype = new Car();

    GoodCar.prototype.run = function(){alert("run fast");}

    需要注意GoodCar类自身的方法一定要在实现继承语句之后定义。

  • 相关阅读:
    Qt自定义一个事件类型
    Qt正则表达式限制输入
    QtQuick随笔
    右值引用示例
    虚函数习题复习
    实现基于IOCP的回声服务器端
    以纯重叠I/O方式实现回声服务器端(windows)
    使用事件对象(重叠I/O)
    pipe mmap
    ubuntu下压缩和解压缩的命令用法
  • 原文地址:https://www.cnblogs.com/tomkillua/p/2612905.html
Copyright © 2011-2022 走看看