面向对象的继承

面向对象继承问题:

  • 属性继承:构造函数伪装
  • 方法继承:原型链

我们先写一个简单的对象

    function Person(name,age) {
        this.name = name;
        this.age = age;
    }
    Person.prototype.showName = function () {
        console.log("名字:" + this.name);
    };
    Person.prototype.showAge = function () {
      console.log("年龄:" + this.age);
    };

实现属性的继承

    function Worker(name,age,job) {
        // this->new 出来的Worker
        // 构造函数伪装:继承父级的构造函数
        Person.call(this,name,age);   //  继承属性
        Worker.prototype.showJob = function () {
            this.job = job;
        };
    }

实现方法的继承

    // 原型链   通过原型来继承父级的方法
    // Worker.prototype = Person.prototype;  // 继承方法
    for(var i in Person.prototype){
        Worker.prototype[i] = Person.prototype[i];
    }

    Worker.prototype.showJob = function () {
        alert(this.job);
    };

实例化测试

    var ost = new Worker("张正阳","30","工程师");
    ost.showJob();
    var ant = new Person("张纪中","40","导演");
    ant.showJob();
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 博客内容:什么是面向对象为什么要面向对象面向对象编程的特性和原则理解对象属性创建对象继承 什么是面向对象 面向对象...
    _Dot912阅读 1,449评论 3 12
  • 1.继承(接口继承和实现继承) 继承是 OO 语言中的一个最为人津津乐道的概念。许多 OO 语言都支持两种继承方式...
    believedream阅读 981评论 0 3
  • 本章内容 理解对象属性 理解并创建对象 理解继承 面向对象语言有一个标志,那就是它们都有类的概念,而通过类可以创建...
    闷油瓶小张阅读 873评论 0 1
  • 讲真,理想的学习就该是玩,开心的玩,投入的玩,今天你玩好了吗? 画与不画,隔一天看,没区别;隔一个月看,少少不同;...
    夏爱东西阅读 447评论 5 6
  • 地图快照截图
    iOS_成才录阅读 3,135评论 3 9