javaScrip类构造函数的几种继承方法

原创 2016年08月29日 22:34:07
js类的构造函数继承:
1 apply方法:
              function Cat(name,color){
    Animal.apply(this, arguments);
    this.name = name;
    this.color = color;
  }
2 prototype

  Cat.prototype = new Animal();

  Cat.prototype.constructor = Cat;

  var cat1 = new Cat("大毛","黄色");
      
       alert(cat1.species); // 动物

//把Cat的皮肉totype赋值给Animal,再把Cat.prototype.constructor赋值给Cat

3 prototype直接等于父类的prototype

  function Animal(){ }

  Animal.prototype.species = "动物";

  Cat.prototype = Animal.prototype;


  Cat.prototype.constructor = Cat;

  var cat1 = new Cat("大毛","黄色");

  alert(cat1.species); // 动物
//     缺点,Cat的prototype和Animal的占用同一块内存空间,修改一个其它也会被修改

//     可以在其中新生成一个空的函数,作为中继

    var F = function(){};

    F.prototype = Parent.prototype;

    Child.prototype = new F();

    Child.prototype.constructor = Child;

    Child.uber = Parent.prototype;

4 直接把父类的元素拷贝到子类里

    var p = Parent.prototype;

    var c = Child.prototype;

    for (var i in p) {

      c[i] = p[i];

      }
    c.uber = p;

类与对象 类的分类 方法 继承 重写

通过几天的学习,老师从简单的程序讲起,让我们巩固所学的知识,加深印象。让我了解到了继承用extends,创建窗体用JFrame,建立面板用JPanel,。对一个实例化对象要实现...
  • chouxiaoming
  • chouxiaoming
  • 2015年01月12日 00:41
  • 329

python学习笔记——旧类与新类继承中的构造函数

旧类以调用未绑定的超类构造方法 class OldDog: def __init__(self): print 'I am a old dog !' sel...
  • XiaoPANGXia
  • XiaoPANGXia
  • 2015年07月18日 15:20
  • 2965

C++中了类继承和调用父类的构造函数方法

构造方法用来初始化类的对象,与父类的其它成员不同,它不能被子类继承(子类可以继承父类所有的成员变量和成员方法,但不继承父类的构造方法)。因此,在创建子类对象时,为了初始化从父类继承来的数据成员,系统需...
  • CatEatApple
  • CatEatApple
  • 2016年06月21日 12:20
  • 1293

C#类继承中构造函数用法小结

直接上例子,通过例子来学习知识,是我一贯的做法,呵呵。 //爷爷类 public class GrandfatherClass { public GrandfatherClass() ...
  • tiana0
  • tiana0
  • 2013年09月05日 22:54
  • 12384

ES6学习——类语法:继承中的实例构造过程

ES6的类中有个constructor函数是用来当构造函数的,如果你不写这个函数,ES6规范中会按照一定的条件给你自动添加上,在规范的14.5.14章节中有这样的描述: ClassTail : Cla...
  • kittyjie
  • kittyjie
  • 2016年01月12日 07:03
  • 1506

编写继承类的复制构造函数和构造函数

当基类存在私有成员时,应该如何编写继承类的复制构造函数呢? 方法是在复制构造函数的初始化成员列表中调用基类的复制构造函数。 class Base{ private: int i; public: ...
  • tianya_team
  • tianya_team
  • 2016年03月14日 21:55
  • 710

理解C++存在继承和组合的对象构造函数调用顺序

前言: Hello,全世界早上好啊,哈哈,9月你好,2015年9月的第一天,也是自己本科生涯的最后一年了,接下来就是校招走上自己的职场,昨天是大四的第一节课,上的是软件工程,挺喜欢的一门课,...
  • u013777351
  • u013777351
  • 2015年09月01日 08:52
  • 2437

C++学习笔记(6)——多重继承类对象的构造函数参数的传递方法

本博客(http://blog.csdn.net/livelylittlefish)贴出作者(三二一、小鱼)相关研究、学习内容所做的笔记,欢迎广大朋友指正!      设计基类、派生类、子派生类,定义...
  • livelylittlefish
  • livelylittlefish
  • 2008年03月11日 21:48
  • 7569

继承时的构造函数的的原则

在日常开发中,我们一般都会存在class的继承,那对于继承,子类父类的构造顺序是什么样的那?自己总结了下,虽然很基础,还是记录下,作为以后的复习只用。     继承时的构造原则: 1、如果...
  • u013421892
  • u013421892
  • 2016年04月20日 16:02
  • 370

c# 关于继承类中构造函数的实现

class 基类 { public 基类() {} public 基类(类型 参数1){/*....*/} } class 继承类:基类 { public 继承类():this(...
  • songshu5555
  • songshu5555
  • 2016年04月07日 09:19
  • 1763
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:javaScrip类构造函数的几种继承方法
举报原因:
原因补充:

(最多只允许输入30个字)