【JavaScript笔记 · 基础篇(十一)】面向对象编程之一:深入理解 “构造函数(constructor)——> 实例对象” 模式

一. 面向对象编程概述

面向对象编程(Object Oriented Programming,缩写为 OOP)是目前主流的计算机编程架构,对比于早期的面向过程编程(C语言为代表)。OOP将真实世界各种复杂的关系,抽象为一个个对象,然后由对象之间的分工与合作,完成对真实世界的模拟。

每一个对象(object)都是功能中心,具有明确分工,可以完成接受信息、处理数据、发出信息等任务。对象可以复用,通过继承机制还可以定制。因此,面向对象编程具有灵活性、代码复用性、可拓展性,高度模块化等特点,容易维护和开发。

二. 实例对象

2.1 对象的本质:单个实体的抽象

应该怎么来理解实例对象呢 ?我们说实例对象就是对于真实世界中的某个事物抽象的提炼整合。 一本书,一棵树,一个人都可以是一个实例对象。面向对象编程就是通过模拟他们之间复杂的实际关系来解决问题。

2.2 实例对象(属性 + 方法)

一个完整的实例对象中定义了它的属性(property)方法(method)。属性就是对象本身具有的一些特征,实例对象具有的功能点就属于它拥有的方法。以一只小狗🐶来举例:

  • 属性(property)—— 名字,性别,品种,年龄,花色…
  • 方法(method)—— 奔跑,吼叫…(拆家警告…haha)

三. 构造函数

面向对象编程的核心步骤就是生成实例对象。至于生成实例对象所参照的 “模板” ,不同的面向对象编程语言选择上会有差别,比如典型的C++ 和 Java,他们中的这个模板被称为 “类(class)” ,对象就是“类”的实例。
但JavaScript中的对象体系是基于构造函数(constructor)和原型对象(prototype)的。
简单的内存图示如下:
在这里插入图片描述
今天这篇就先来深入了解一下JavaScript中的构造函数(constructor)。下一篇中我们再深入探讨面向对象编程的另一个很重要的方面——原型对象(prototype)
(后续文末更新链接)

3.1 构造函数的声明

构造函数的声明和之前讲的普通函数声明很类似:

  • function关键字:
function Dog (name) {
   
    this.name = name;
};
  • 传统函数表达式:
var Dog = function (name) {
   
    this.name = name
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值