Inheritance(Chapter 5 of JavaScript: The Good Parts)

本文通过JavaScript实现了一个基本的面向对象编程示例,定义了Mammal和Cat类,展示了继承和原型链的使用。Mammal类作为基类,包含获取名称的方法,而Cat类继承自Mammal,增加了猫的特有行为如叫声和咕噜声。
ExpandedBlockStart.gifcode
 1 var Mammal = function (name) {
 2                 this.name = name;
 3             };
 4 
 5             Mammal.prototype.get_name = function () {
 6                 return this.name;
 7             }
 8 
 9             Mammal.prototype.says = function () {
10                 return this.saying || '';
11             };
12 
13             var myMammal = new Mammal('Herb the Mammal');
14             var name = myMammal.get_name();
15             alert(name);
16 
17             var Cat = function (name) {
18                 this.name = name;
19                 this.saying = 'meow';
20             };
21 
22             Cat.prototype = new Mammal();
23             Cat.prototype.purr = function (n) {
24                 var i, s = '';
25                 for (i = 0; i < n; i += 1) {
26                     if (s) {
27                         s += '-';
28                     }
29                     s += 'r';
30                 }
31                 return s;
32             };
33 
34             Cat.prototype.get_name = function () {
35                 return this.says() + ' ' + this.name + ' ' + this.says();
36             };
37 
38 var myCat = new Cat('Henrietta');
39 
40 alert(myCat.says());
41 alert(myCat.purr(5));
42 alert(myCat.get_name());

 

转载于:https://www.cnblogs.com/zhtf2014/archive/2010/07/10/1774790.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值