zoukankan      html  css  js  c++  java
  • js继承函数封装

    function extend(subClass,superClass) {
        //初始化一个中间空对象,为了转换主父类关系
        var F = function() {};
        F.prototype = superClass.prototype;
        //让子类继承F
        subClass.prototype = new F();
        subClass.prototype.constructor = subClass;
        //为子类增加属性superClass
        subClass.superClass = superClass.prototype;
        //增加保险,即使原型是超类Object,那句要把构造函数级别降下来
        if(superClass.prototype.constructor == Object.prototype.constructor) {
            superClass.prototype.constructor = superClass;
        }
    }
    
    function Author(name,book) {
        Author.superClass.constructor.call(this,name);
        this.book = book;
        this.getBook = function() {
            return this.name + '--' + this.book;
        }
    }
    
    function Person(name) {
        this.name = name;
    }
    
    extend(Author,Person);
    var peter = new Author('long','keke');
    console.log(peter.getBook())
  • 相关阅读:
    SpringMVC详解
    java设计模式
    运行时异常与一般异常区别
    oracle基本操作大全
    get post 区别
    hibernate
    Spring框架
    http和https
    JDBC详解
    (转)Entity Framework4.1实现动态多条件查询、分页和排序
  • 原文地址:https://www.cnblogs.com/pjl43/p/7679773.html
Copyright © 2011-2022 走看看