关于原型继承和构造继承的区别

来源:6-6 选择题

SuperMan_GYD

2019-07-02 11:15:06

是不是原型继承可以继承父级的成员变量而构造继承无法继承成员变量

写回答

2回答

好帮手慕星星

2019-07-02

你好,JavaScript中没有成员变量,java中才有,所以不要混淆了。

方法都是可以继承的,这句话是有问题的。

之前给同学举的两个例子中自己测试下结果就可以看出来属性以及方法是否继承了,下面给同学再解释一下。

(1)原型继承:

http://img.mukewang.com/climg/5d1b06a50001544f05030390.jpg

http://img.mukewang.com/climg/5d1b060a000191a404080226.jpg

自身属性和方法以及原型上的属性和方法都是可以继承的。

(2)构造继承:

http://img.mukewang.com/climg/5d1b06940001b2c605090444.jpg

http://img.mukewang.com/climg/5d1b06860001267803950157.jpg

只继承了自身的属性和方法,原型上的属性和方法不会继承。

这就是原型继承和构造继承的区别,自己可以测试下。

0

好帮手慕星星

2019-07-02

你好,同学的描述有些不太清楚:

(1)成员变量指的是构造函数中的属性或者方法嘛,使用this或者在原型上添加的内容。

(2)原型继承是可以继承父级中属性和方法,例如:

http://img.mukewang.com/climg/5d1af69f0001c3dc04990270.jpg

而构造继承说的是选择题中这种方式吗?

http://img.mukewang.com/climg/5d1af6c00001ab2004170191.jpg

这种方式只能继承this设置的内容,原型上的内容不能继承。

这两种方式自己可以举例测试下,如果还没有解决你的问题,建议描述具体一些,便于准确定位问题所在,帮助你解决。

祝学习愉快!

0
huperMan_GYD
h 你这个说法说的我都蒙了
h019-07-02
共2条回复

0 学习 · 14456 问题

查看课程