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 相关文章推荐
js的image onload事件使用遇到的问题
Jul 15 Javascript
JavaScript获取文本框内选中文本的方法
Feb 20 Javascript
js实现分享到随页面滚动而滑动效果的方法
Apr 10 Javascript
JavaScript中 ES6 generator数据类型详解
Aug 11 Javascript
Jquery针对tr td的一些实用操作方法(必看篇)
Oct 05 Javascript
使用BootStrap建立响应式网页——通栏轮播图(carousel)
Dec 21 Javascript
jquery操作select取值赋值与设置选中实例
Feb 28 Javascript
使用elementUI实现将图片上传到本地的示例
Sep 04 Javascript
Vant Weapp组件踩坑:picker的初始赋值解决
Nov 12 Javascript
如何封装Vue Element的table表格组件
Feb 06 Vue.js
介绍一下28个JS常用数组方法
May 06 Javascript
JS前端轻量fabric.js系列之画布初始化
Aug 05 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
虫族 Zerg 历史背景
2020/03/14 星际争霸
基于mysql的bbs设计(四)
2006/10/09 PHP
PHP函数篇之掌握ord()与chr()函数应用
2011/12/05 PHP
php类中private属性继承问题分析
2012/11/01 PHP
php将远程图片保存到本地服务器的实现代码
2015/08/03 PHP
Javascript实现的分页函数
2007/02/07 Javascript
判断用户的在线状态 onbeforeunload事件
2011/03/05 Javascript
强大的jquery插件jqeuryUI做网页对话框效果!简单
2011/04/14 Javascript
jquery中get,post和ajax方法的使用小结
2014/02/04 Javascript
js实现飞入星星特效代码
2014/10/17 Javascript
浅谈javascript中的DOM方法
2015/07/16 Javascript
基于jQuery实现仿百度首页换肤背景图片切换代码
2015/08/25 Javascript
javascript实现日期时间动态显示示例代码
2015/09/08 Javascript
jQuery中事件与动画的总结分享
2016/05/24 Javascript
通过jquery-ui中的sortable来实现拖拽排序的简单实例
2016/05/24 Javascript
Javascript闭包与函数柯里化浅析
2016/06/22 Javascript
微信小程序 地图定位简单实例
2016/10/14 Javascript
原生JavaScript制作计算器
2016/10/16 Javascript
javascript轮播图算法
2016/10/21 Javascript
泛谈JS逻辑判断选择器 || &amp;&amp;
2019/05/24 Javascript
Vue2.x通用条件搜索组件的封装及应用详解
2019/05/28 Javascript
vue单文件组件无法获取$refs的问题
2020/06/24 Javascript
浅谈Vue开发人员的7个最好的VSCode扩展
2021/01/20 Vue.js
Python实现partial改变方法默认参数
2014/08/18 Python
Python正则表达式分组概念与用法详解
2017/06/24 Python
Python按照list dict key进行排序过程解析
2020/04/04 Python
Python开发入门——迭代的基本使用
2020/09/03 Python
python装饰器实现对异常代码出现进行自动监控的实现方法
2020/09/15 Python
使用CSS3的font-face字体嵌入样式的方法讲解
2016/05/13 HTML / CSS
科尔士百货公司官网:Kohl’s
2016/07/11 全球购物
哈利波特商店:Harry Potter Shop
2018/11/30 全球购物
二手房买卖协议书
2014/04/10 职场文书
《狼和小羊》教学反思
2014/04/20 职场文书
班级团队活动方案
2014/08/14 职场文书
Python词云的正确实现方法实例
2021/05/08 Python
python 办公自动化——基于pyqt5和openpyxl统计符合要求的名单
2021/05/25 Python