javascript 面向对象思想 附源码


Posted in Javascript onJuly 07, 2009
<html> 
<head> 
<script type="text/javascript"><!-- 
ClassModel = //类模型,用于创建类 
{ 
create: function() 
{ 
return function(){this.construct.apply(this,arguments);} 
} 
} 
Extend = function(desc, src) //模拟类继承, 将一个对象的所有成员 复制到 另一个对象中 
{ 
for(var c in src) 
{ 
desc[c] = src[c]; 
} 
return desc; 
} 
Object.prototype.extend = function(src) 
{ 
return Extend.apply(this, [this, src]); 
} 
var human = ClassModel.create(); 
human.prototype = 
{ 
construct : function() //构造函数 
{ 
//alert("construct method"); 
//alert(this.speak() + "," + this.sleep()); 
}, 
speak : function() 
{ 
alert("speak"); 
}, 
sleep : function() 
{ 
alert("sleep"); 
}, 
sex : function() 
{ 
alert("女"); 
} 
} 
var h = new human(); 
h.speak(); //调用human类的speak方法 
var student = ClassModel.create(); 
student.prototype = (new human()).extend({ //student类继承类human类 
sex : function() //方法重载 (多态) 
{ 
alert("男"); 
}, 
study : function() 
{ 
alert("studying"); 
}, 
thinking : function() 
{ 
alert("thinking"); 
} 
}); 
var student = new student(); 
student.sleep(); //调用 父类(human) 的sleep方法 
student.study(); //调用 student的study方法 
student.thinking(); //调用 student的thinking方法 
student.sex(); //结果为 男 不再是父类的 女 
// --></script> 
</head> 
</html>
Javascript 相关文章推荐
javascript学习笔记(十三) js闭包介绍(转)
Jun 20 Javascript
javascript自动给文本url地址增加链接的方法分享
Jan 20 Javascript
Jquery插件编写简明教程
Mar 25 Javascript
jquery通过closest选择器修改上级元素的方法
Mar 17 Javascript
jquery小火箭返回顶部代码分享
Aug 19 Javascript
jquery验证邮箱格式并显示提交按钮
Nov 07 Javascript
JavaScript编程设计模式之观察者模式(Observer Pattern)实例详解
Oct 25 Javascript
jQuery实现获取及设置CSS样式操作详解
Sep 05 jQuery
vue webpack打包后图片路径错误的完美解决方法
Dec 07 Javascript
解决vue更新路由router-view复用组件内容不刷新的问题
Nov 04 Javascript
js实现轮播图特效
May 28 Javascript
Vue使用轮询定时发送请求代码
Aug 10 Javascript
jquery BS,dialog控件自适应大小
Jul 06 #Javascript
javascript 浏览器判断 绑定事件 arguments 转换数组 数组遍历
Jul 06 #Javascript
javascript 写类方式之十
Jul 05 #Javascript
javascript 写类方式之九
Jul 05 #Javascript
javascript 写类方式之八
Jul 05 #Javascript
javascript 写类方式之七
Jul 05 #Javascript
javascript 写类方式之六
Jul 05 #Javascript
You might like
用Flash图形化数据(一)
2006/10/09 PHP
PHP性能优化工具篇Benchmark类调试执行时间
2011/12/06 PHP
php中设置index.php文件为只读的方法
2013/02/06 PHP
解决php-fpm.service not found问题的办法
2017/06/06 PHP
PHP实现获取url地址中顶级域名的方法示例
2019/06/05 PHP
jQuery实现仿Google首页拖动效果的方法
2015/05/04 Javascript
javascript单例模式的简单实现方法
2015/07/25 Javascript
使用JQuery实现Ctrl+Enter提交表单的方法
2015/10/22 Javascript
JS生成一维码(条形码)功能示例
2017/01/19 Javascript
JS常用知识点整理
2017/01/21 Javascript
AngularJS实现的JSONP跨域访问数据传输功能详解
2017/07/20 Javascript
利用express启动一个server服务的方法
2017/09/17 Javascript
微信小程序radio组件使用详解
2018/01/31 Javascript
在SSM框架下用laypage和ajax实现分页和数据交互的方法
2019/09/27 Javascript
Vue 实现登录界面验证码功能
2020/01/03 Javascript
vue实现一个矩形标记区域(rectangle marker)的方法
2020/10/28 Javascript
[00:59]DOTA2英雄背景故事——上古巨神
2020/06/28 DOTA
python中日期和时间格式化输出的方法小结
2015/03/19 Python
深入解析Python中的list列表及其切片和迭代操作
2016/03/13 Python
人脸识别经典算法一 特征脸方法(Eigenface)
2018/03/13 Python
python3+PyQt5重新实现自定义数据拖放处理
2018/04/19 Python
详解python中的hashlib模块的使用
2019/04/22 Python
tensorflow实现对张量数据的切片操作方式
2020/01/19 Python
Python GUI库PyQt5样式QSS子控件介绍
2020/02/25 Python
python继承threading.Thread实现有返回值的子类实例
2020/05/02 Python
解析python 类方法、对象方法、静态方法
2020/08/15 Python
Django权限控制的使用
2021/01/07 Python
Links of London官方网站:英国标志性的珠宝品牌
2017/04/09 全球购物
丹尼尔惠灵顿手表天猫官方旗舰店:Daniel Wellington
2017/08/25 全球购物
俄罗斯EPL钻石珠宝店:ЭПЛ
2019/10/22 全球购物
实习教师个人的自我评价
2013/11/08 职场文书
领导班子党的群众路线教育实践活动对照检查材料
2014/09/25 职场文书
2014年社区矫正工作总结
2014/11/18 职场文书
2015年幼儿园国庆节活动总结
2015/07/30 职场文书
Python编程super应用场景及示例解析
2021/10/05 Python
Python使用OpenCV实现虚拟缩放效果
2022/02/28 Python