js中的继承与重写
rt.
用function 分别定义Person和Account类模型,其中Account从Person继承,并重写toString()方法
<script type="text/javascript">
function go() {
var acc1 = new Account("Taro", "Shibuya1-1-2", "1001", 20000);
var acc2 = new Account("Hanako", "Akasaka2-3-4", "1002", 35000);
acc1.toString();
acc2.toString();
}
// 定义Person构造器
function Person(name, address) {
this.name = name;
this.address = address;
}
// 在Person.property中添加toString方法
Person.prototype.toString = function() {
document.write(this.name + " " + this.address + "<br>");
}
// 定义Account构造器
function Account(name, address, number, amount) {
// 从Person继承
this.newObj = Person;
this.newObj(name, address);
delete this.newObj;
// Account特有属性
this.number = number;
this.amount = amount;
}
Account.prototype = Object.create(Person.prototype);
// 设置"constructor" 属性指向Account
Account.prototype.constructor = Account;
// 更改Person中toString方法
Account.prototype.toString = function() {
document.write(this.name + " " + this.address
+ " " + this.amount + "<br>");
}
Account.prototype.deposit = function(x) {
this.amount += x;
}
Account.prototype.withdraw = function(x) {
this.amount -= x;
}
</script>
声明:该文观点仅代表作者本人,入门客AI创业平台信息发布平台仅提供信息存储空间服务,如有疑问请联系rumenke@qq.com。
- 上一篇:没有了
- 下一篇:没有了
