js原生设计模式——2面向对象编程之继承—new+call(this)组合式继承
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>groupInherit</title>
<script type="text/javascript">
//声明父类
function superClass(name){
this.name = name;
this.books = ['html','css','js'];
}
superClass.prototype.getName = function(){
console.log(this.name);
}
superClass.prototype.getBooks = function(){
console.log(this.books);
}
//声明子类
function subClass(name,time){
superClass.call(this,name);//让子this指向父this,后面带的是父类需传入的参数name
this.time = time;
}
subClass.prototype = new superClass();//类式继承
subClass.prototype.getTime = function(){
console.log(this.time);
}
//测试用例:实例化对象测试
var test1 = new subClass('js book',2015);
var test2 = new subClass('css book',2014);
test1.books.push('php');//test2插入的数据'php'不影响test1
console.log(test1.name); //'js book'
console.log(test1.books); //["html", "css", "js", "php"]
test1.getName(); //'js book'
test1.getBooks(); //["html", "css", "js", "php"]
test1.getTime(); //2015
console.log(test2.name); //'css book'
console.log(test2.books); //["html", "css", "js"]
test2.getName(); //'css book'
test2.getBooks(); //["html", "css", "js"]
test2.getTime(); //2014
//本例已经通过验证,this属性和原型方法均能访问
</script>
</head>
<body>
</body>
</html>
js原生设计模式——2面向对象编程之继承—new+call(this)组合式继承相关推荐
- JS面向对象——原型式继承函数、寄生式继承函数、寄生组合式继承
一.原型式继承函数 回顾一下JavaScript想实现继承的目的:重复利用另外一个对象的属性和方法. 最终的目的:student对象的原型指向了person对象: 二.寄生式继承函数 寄生式(Para ...
- js原生设计模式——3简单工厂模式\简单工厂模式封装简单对象
1.Factory基本写法 <!DOCTYPE html> <html lang="en"> <head> <meta chars ...
- JS基础--组合继承,寄生组合式继承
以下内容总结自<JavaScript高级程序设计(第3版)> 一. 组合继承 组合继承使用原型链实现对原型属性和方法的继承,使用借用构造函数实现对实例属性的继承(引用类型的属性写在构造函数 ...
- JS面向对象编程之:封装、继承、多态
一.封装 (1)封装通俗的说,就是我有一些秘密不想让人知道,就通过私有化变量和私有化方法,这样外界就访问不到了.然后如果你有一些很想让大家知道的东西,你就可以通过this创建的属性看作是对象共有属性和 ...
- python面向对象编程指南 脚本之家_Python面向对象编程之继承与多态详解
本文实例讲述了Python面向对象编程之继承与多态.分享给大家供大家参考,具体如下: Python 类的继承 在OOP(Object Oriented Programming)程序设计中,当我们定义一 ...
- 面向对象编程之继承、多态、封装、抽象类、接口、包-上
面向对象编程之继承.多态.封装.抽象类.接口.包-上 继承 类的继承格式 为什么要继承 继承的特点 继承的种类及关键字 访问权限 多态 向上转型 动态绑定 方法重写 重写和重载的区别比较 多态的优点 ...
- C语言--面向对象编程之继承
系列文章目录 C语言实现面向对象编程的第二篇,在第一篇里面我们已经了解到了何为面向对象以及实现面向对象的第一大特性–封装,对于C来说,实现继承和多态要稍微麻烦一些. C语言实现面向对象- - 封装 C ...
- 面向对象编程之:封装、继承、多态
最近在实习公司写代码,被隔壁的哥们吐槽说,代码写的没有一点艺术.为了让我的代码多点艺术,我就重新温故了<javascript高级程序设计>(其中几章),然后又看了<javascrip ...
- 【C语言】C语言实现面向对象编程之继承
00. 目录 文章目录 00. 目录 01. 概述 02. 利用结构体包含实现继承功能 03. 利用私有指针实现继承功能 04. 总结 05. 附录 01. 概述 面向对象编程具有封装性.继承性.多态 ...
最新文章
- 解决 Callout位置不更新的问题
- wmic 获取运行内存大小
- SAP Spartacus B2B Org Unit树状结构的加载机制
- 学习笔记~~~~~python基础
- 几个常用的正则表达式
- php将文件转换为utf-8,PHP-将邮件正文转换为UTF-8
- .NET:枚举的默认值
- .net 时间操作(datetime数据类型,datetime方法)
- 初识Python导图笔记
- 泛型列表(List)的搜索和排序
- AspNet WebApi OData 学习
- Cost Function of Support Vector Machine
- 51单片机的篮球计分器设计
- 手写字体研究-matlab
- Dolby Digital(Dolby Surround Digital,杜比数码环绕声)
- 企业微信授权登录实例代码(仅仅获取过程)
- Android 9.0打开wifi时关闭热点流程
- “匠心之韵,数据之美”之数字营销专访【友盟+】一周年:不忘初心,从整合到融合,从合并到合力...
- [Spring]~@Valid(实体类参数校验)
- 罗杰斯的创新扩散模型