对象冒充 object masqurading

本文通过一个JavaScript示例展示了如何使用对象冒充的方法来实现多继承。具体做法是在构造函数内部创建对父类构造函数的引用并调用它,之后再定义新的方法和属性。这种方式能够有效地支持多继承,为JavaScript的面向对象编程提供了灵活的选择。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

function Car(color){
	this.color = color;
	this.run = function(){document.write("车开了<br/>");};
}

function Bus(color, owner){
	//获取指向Car的指针
	this.newMethod = Car;
	this.newMethod(color);
	//删除指针
	delete this.newMethod;

	//定义新方法/属性
	this.owner = function(){document.write("这是属于" + owner + "的车<br/>");};
}

var car = new Car("红色");
var bus = new Bus("黄色", "老板");
car.run();
bus.owner();
document.write("这车的颜色是:" + bus.color + "<br/>");
bus.run();


有趣的是对象冒充可以支持多继承,在函数休内定义多个指向不同类的属性则可

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值