下面我这里给出一个模型,其实现在很多朋友学面向对象编程思想的时候由于没有简单明了的示例而感到很迷茫.下面给出一个,不仅仅对于javascript.对于其他语言可能也有一定帮助,学的是思想,呵呵.
下面的代码很好理解
其实对于oop可以这样来理解:人有不同名字,可是他们都是2只手2只脚一个头没错吧?(不正常的排除,嘿嘿)
1.我就先建立一个人的模型(比如 人有名字.有身高.有体重等等.他还有一些动作.比如跳,跑,走.等等....)
2.然后再模型基础上建立一个拥有一些自己属性的人(比如他有自己特定的名字身高体重.他还能做跳跑走以外的动作)
3.然后可以随意调用这个对象(也就是可以把这个人放在我们自己设计的世界的任何一个地方并且让它干些什么,也可以让他学会干一些什么(建立新的动作)).
下面是示例代码
复制内容到剪贴板
代码:
<script>
//建立对象模型
function Man() {
this.Name = null; //给它一个属性
this.SetNames = function(NewName) { //定义一个动作
this.Name = NewName;
}
this.ToString = function() { //定义一个动作
return "名字是:"+this.Name;
}
}
//定义Auntion对象.
function Auntion() {}
Auntion.prototype = new Man; //指定父对象.
Auntion.prototype.ToString = function() { //重新赋予ToString属性
return this.Name;
};
//调用模型并自定义对象名称
var auntion = new Auntion();
auntion.SetNames("我叫Auntion,哈哈!")
//定义结束/
alert(auntion.ToString());
</script>
提示:您可以先修改部分代码再运行
[
本帖最后由 Nicest 于 2006-12-4 21:34 编辑 ]