工厂方法和构造函数

工厂方法

  • 工厂方法用来批量产生对象
function CreatCar(name,prase){// new 一个对象var obj = new Object();obj.name = name;obj.parse = prase;obj.print = function(){console.log(this.name +" : " + this.parse)};// 返回对象return obj;
};var car1 = CreatCar("car1",120000);
var car2 = CreatCar("car2",12345);
var car3 = CreatCar("car3",788888);
car1.print();
car2.print();
car3.print();

构造函数

  • 工厂方法虽然可以批量生产对象,但所生产的对象都是 Object 类的实例,无法区分类别
function print(){console.log(this.name +" : " + this.parse)
};function Car(){this.type = "car";this.print = print;
}function CreatCar(name,prase){var obj = new Car();obj.name = name;obj.parse = prase;return obj;
}var car1 = CreatCar("car1",120000);
var car2 = CreatCar("car2",12345);
var car3 = CreatCar("car3",788888);
console.log(car1);
console.log(car2);
console.log(car3);
  • 构造函数的执行流程

    1. 创建一个新对象
    2. 将新创建的对象作为构造函数的 this
    3. 执行构造函数中的语句
    4. 将新创建的对象返回
  • 可以使用 instenceof 判断一个对象是否是一个类的实例

08_JS工厂方法和构造函数相关推荐

  1. html5创建对象的方法,JavaScript面向对象-使用工厂方法和构造函数方法创建对象...

    在上一篇文章中我们介绍了JavaScript简单对象的创建方法,简单js对象的最大问题是由于没有类的约束,无法实现对象的重复利用,并且没有一种约定,在操作时会带来问题.所以人们从设计模式中借用了一种工 ...

  2. 【Effective Java】1.静态工厂方法来替换构造函数

    优点一:不像构造函数,它有具意的名称 因为可以取具意的名称,更容易明白如何使用,可读性也更好, 优点二:每次调用无需创建新的对象 优点三:允许返回子类对象 这些子类可以不为public ,这样可以打造 ...

  3. js面向对象小结(工厂模式,构造函数,原型方法,继承)

    本文转至:TJYoung 最近过了一遍尼古拉斯泽卡斯的高级程序设计第三版(红皮书)第六章:面向对象程序设计,现在把总结出来的东西和大家分享一下. 主要内容如下: 1.工厂模式 2.构造函数模式 3.原 ...

  4. JavaScript基础08-day10【函数的返回值、实参、立即执行函数、方法、全局作用域、函数作用域、提前声明、this、工厂方法创建对象、构造函数】

    学习地址: 谷粒学院--尚硅谷 哔哩哔哩网站--尚硅谷最新版JavaScript基础全套教程完整版(140集实战教学,JS从入门到精通) JavaScript基础.高级学习笔记汇总表[尚硅谷最新版Ja ...

  5. 构造函数还是静态工厂方法?

    我相信Joshua Bloch在他的非常好的书" Effective Java"中首先说了它:与构造函数相比,静态工厂方法是实例化对象的首选方法. 我不同意. 不仅因为我相信静态方 ...

  6. 类和模块 类和原型 工厂方法 构造函数 constructor

    类和模块 每个js的对象都是属性的集合.相互之间没有联系. js也能定义对象的类,让每个对象都共享某些属性. 类的成员或者实例包含一些属性,用来存放或者定义他们的状态.有些属性定义了其行为,(行为或者 ...

  7. java如何对foo bar调用方法_关于java:如何测试工厂方法传递给构造函数的参数?...

    我遇到了一个我真不知道如何解决的情况.我刚刚创建了一个类Foo,它包含一个静态工厂方法,使用一些参数创建类Bar,因此Foo是一种工厂类.现在我想测试这个方法,但问题是,这些参数在内部被修改,以创建在 ...

  8. 工厂方法模式和抽象工厂模式

    工厂方法模式和抽象工厂模式 工厂方法模式 抽象工厂模式 总结: 工厂方法模式 #include <string> #include <iostream>// Abstract ...

  9. 创建对象_工厂方法(Factory Method)模式 与 静态工厂方法

    工厂方法模式: 定义:为创建对象定义一个接口,让子类决定实例化哪个类.工厂方法让一个类的实例化延迟至子类. 应用场景: 客户类不关心使用哪个具体类,只关心该接口所提供的功能: 创建过程比较复杂,例如需 ...

最新文章

  1. MYSQL 连接数据库命令收藏
  2. 如何实现iframe(嵌入式帧)的自适应高度
  3. 使用硬件定时器软模拟多个定时器(8.15改进版)
  4. 会员日亚马逊工人罢工:反抗“与机器比速度”的考核制!
  5. XP系统和Sever2003系统现实定时开关机
  6. Ubuntu12上安装Oracle11gR2
  7. ​多任务学习漫谈:行梯度之事
  8. 在实践中重试HTTP标头
  9. 农村义务教育经费保障机制改革校长应知应会卡
  10. 【填坑中】学生信息管理系统
  11. 操作系统(10)-虚拟内存
  12. Redis入门,Redis的安装
  13. 笑谈“委托”与“事件”
  14. 什么是腾讯云图数据可视化?它有哪些特性以及应用场景?
  15. 牌匾设计软件测试自学,回弹检测测点
  16. 计算机专业研究生的读研规划思考------转载
  17. android zip格式的ndk,Android 使用NDK (JNI)容易解压7z压缩文件
  18. 无爬虫团队,企业如何实现1000万级数据采集?
  19. Windows 环境配置Github 的SSH key
  20. VOLTE关键技术:锚定、被叫域选择

热门文章

  1. 聊聊composer.lock
  2. 揭秘一线互联网企业 前端JavaScript高级面试
  3. oracle sqlldr (一) 最基本语法
  4. 使用VS2010编译Qt 5.6.1过程记录
  5. Linux epoll 笔记(高并发事件处理机制)
  6. 杭电OJ-2104_hide handkerchief超简洁代码
  7. MySQL水平分区代理Spock Proxy(一)
  8. XCode10 swift4.2 适配遇到的坑
  9. Redis进阶实践之十六 Redis大批量增加数据
  10. HTML5 webfont字体图标的使用