2016.8.07 this、new、模式工厂、创建新的构造函数

写在前面:今天我将发表函数基础、对象基础、this、new、封装、封装例子  这几篇个人理解文章。最好能一口气看完,并自己写下,相信会对想要理解函数和对象的朋友们会有一些帮助。

目录:模式工厂、 this、new、创建新的构造函数

模式工厂:将对象放入函数中,批量创建对象

  代码:

        function Student(name,age,sex){
            var o=new Object();//先定义一个对象,
            o.name=name;
            o.age=age;
            o.sex=sex;
            o.sayHi=function(){
                console.log("我叫"+o.name);
            }
            return o;//返回对象,这个对象里有name,age,sex,sayHi
        }
        //使用构造函数的方式定义ls
        var ls=new Student("李四",25,"男");
        var ls2=new Student("王五",22,"女");
        ls.sayHi();

this:谁调用,指代谁,不二话。
new: new 关键字来完成
1、创建一个空对象
2、将关键字this指向这个空对象
3、执行构造函数里面的代码,给当前空对象this设置属性和方法
4、将this这个当前对象返回

创建新的构造函数(也就是封装)代码:

        function Student(name,age,sex){
            var o=new Object();//先定义一个对象,
            o.name=name;
            o.age=age;
            o.sex=sex;
            o.sayHi=function(){
                console.log("我叫"+o.name);
            }
            return o;//返回对象,这个对象里有name,age,sex,sayHi
        }
        //使用构造函数的方式定义ls
        var ls=new Student("李四",25,"男");
        var ls2=new Student("王五",22,"女");
        ls.sayHi();
时间: 2024-12-21 16:01:27

2016.8.07 this、new、模式工厂、创建新的构造函数的相关文章

第4章 创建型模式—工厂方法模式(2)

2. 工厂方法模式 2.1工厂方法模式的定义 (1)定义一个用于创建对象的接口,让子类决定实例化哪一个类,工厂模式使一个类的实例化延迟到其子类 ①Product:定义了工厂方法创建对象的接口.也就是实际需要使用的产品对象的接口 ②ConcreteProduct:具体的Product接口的实现对象. ③Factory(Creator):定义了工厂方法的抽象类并返回一个产品对象. ④ConcreteCreator:具体的创建器对象,该类实现和覆盖了父工厂类声明的方法.返回一个具体的Product实例

第4章 创建型模式—工厂方法模式(1)

1. 简单工厂 1.1 简单工厂的定义 (1)提供一个创建对象实例的功能,而无须关心其具体实现. ①Api接口:定义客户所需要的功能接口 ②Impl:具体实现Api的实现类,可能会有多个 ③SimpleFatory类:工厂,选择合适的实现类来创建Api接口对象 ④Client:客户端,通过Factory来获取Api接口对象,然后面向Api接口编程. (2)思考简单工厂 ①简单工厂的本质:选择实现,其重点在选择.工厂类内部的主要功能是“选择合适的实现类”来创建实例对象. ②简单工厂的目的:为客户端

创建型模式-工厂三姐妹

简单工厂模式: 就简单工厂而言,算是三姐妹之中最小的一个,也是最简单的一个了! 简单工厂模式是类的创建模式,又叫做静态工厂方法模式.虽然为很多模式提供了基础与方便,但是他却不属于23种GOF设计模式之一,至于为什么?或许就是因为他不符合开放-封闭老爷子的脾气吧! 简单工厂模式是由一个工厂对象决定创建出哪一种产品类的实例. 工厂方法模式: 最大的特点就是针对每一个对象建造一个工厂.同时这也是这个模式的缺点.由于每加一个产品,就要增加一个产品工厂的类,这样无疑就增加了额外的开发量. 那么优点是什么呢

设计模式--工厂模式(创建型)

工厂模式属于创建型模式,分为三类,简单工厂模式.工厂方法模式.抽象工厂模式. 一.简单工厂模式 在工厂中做判断,根据产品类型从而创造相应的产品,当增加新产品时需要修改工厂类. 例如: enum CTYPE {COREA, COREB}; class SingleCore { public: virtual void Show() = 0; }; //单核A class SingleCoreA: public SingleCore { public: void Show() { cout<<&q

单例和工厂模式的创建

#pragma once class Config { private: static Config * con; Config(void); Config(const Config & con);//拷贝构造置为私有 public: float cpu; float memory; float harddisk; ~Config(void); //注意声明有static 静态. static Config * getInstance(); void creatInstance(); //工厂模

设计模式(一)工厂模式(创建型)

简单工厂模式 一个抽象产品类,可以派生出多个具体产品类: 一个具体工厂类,可以创建多个具体产品的实例. 抽象产品类定义 public abstract class Sender { void send(){ }; } 具体产品类定义 邮件产品类 public class MailSender extends Sender{ public void send(){ System.out.println("Mail Sender!"); } } 短信产品类 public class Sms

设计模式04: Factory Methord 工厂方法模式(创建型模式)

Factory Methord 工厂方法模式(创建型模式) 从耦合关系谈起耦合关系直接决定着软件面对变化时的行为 -模块与模块之间的紧耦合使得软件面对变化时,相关的模块都要随之变更 -模块与模块之间的松耦合使得软件面对变化时,一些模块更容易被替换或者更改,但其他模块保持不变 对代码的关注要在理解了设计模式之后,对于不同的代码但是解决的是同一类问题,他们就是同一种设计模式.解决了哪一类的问题就是哪一类的设计模式. 软件需求的变化是软件工程的一部分,是我们要解决的问题. 把模块分为主模块.次模块主模

Java的23中设计模式--工厂方法模式(Factory Method)

1.普通工厂模式 工厂类 /** * @Title Factory.java * @Package factory.factory1 * @date 2015-1-22 上午10:16:02 * @version V1.0 */ package factory.factory1; /** * @ClassName Factory * @date 2015-1-22 上午10:16:02 */ public class Factory { public Sender procedure(Strin

JAVA设计模式之工厂模式(简单工厂模式+工厂方法模式)

在面向对象编程中, 最通常的方法是一个new操作符产生一个对象实例,new操作符就是用来构造对象实例的.但是在一些情况下, new操作符直接生成对象会带来一些问题.举例来说, 许多类型对象的创造需要一系列的步骤: 你可能需要计算或取得对象的初始设置; 选择生成哪个子对象实例; 或在生成你需要的对象之前必须先生成一些辅助功能的对象. 在这些情况,新对象的建立就是一个 "过程",不仅是一个操作,像一部大机器中的一个齿轮传动. 模式的问题:你如何能轻松方便地构造对象实例,而不必关心构造对象实