什么是面向对象?你了解吗?(超细讲解)

面向对象编程(OOP)是一种编程范式,它将问题分解为独立的对象,每个对象有自己的属性和行为。与面向过程不同,面向对象注重对象间交互而非步骤执行。主要特点包括封装、继承和多态。构造函数在OOP中用于创建对象,而工厂模式则是一种对象创建的抽象。文章还讨论了JavaScript、ES6以及Vue和React中的类和构造函数应用。
摘要由CSDN通过智能技术生成

目录

什么是面向对象(oop)?

面向过程

 面向对象           

两者区别

面向对象的特点

对象的组成

构造函数ES5

工厂模式(了解)

构造函数模式

构造函数和对象的关系

总结


什么是面向对象(oop)?

面向过程

就是将一件“大事”,按一些更小的步骤(小事)顺序去一个一个完成。这几乎符合人类的基本行为习惯。

思想演示举例

    第一步,学生提出要报名,并提供姓名和照片
    
    第二步,咨询老师接收照片并登记学生姓名

    第三步,学生缴费(付款到学校账号)并获得缴费凭证

    第四步,咨询老师验证凭证并分配班级

    第五步,最终结果为:报名完成,学生可以在规定的时间到规定的班级(教室)上课,数

                  据库中就有了该学生的信息。

 面向对象           

就是将要完成的一件“大事”,分割出其中的一个一个“独立对象”,每个对象都有其自身的“特征信息”,和“行为动作/功能”。被其他的对象根据需要进行调用,返回数据.每个对象之间都各行其是,互相之间按照要求做事,返回结果。

思想演示举例   

学生对象:有姓名有照片,有钱,能“提出报名”,能“缴费”

咨询老师对象:能接收照片并登记姓名,能分配班级。

班级对象:有班号,有开班日期,有教室

两者区别

面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了;
面向对象是把构成问题事务分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描叙某个事物在整个解决问题的步骤中的行为。

面向对象的特点

1、封装
隐藏对象的属性和实现细节,仅对外提供公共访问方式,将变化隔离,便于使用,提高复用性和安全性。
2、继承
提高代码复用性;继承是多态的前提。
3、多态
父类或接口定义的引用变量可以指向子类或具体实现类的实例对象。提高了程序的拓展性。

对象的组成

方法(有归属)----函数(自由的)

属性(有归属)----变量(自由的)

构造函数ES5

1 new 出来的都是对象

2 能被new 的都是构造函数(class除外)

工厂模式(了解)

工厂模式其实就是把需要一个个的编写的对象,放在一个函数中统一的进行创建,说白了就是普通函数的封装。
 工厂模式总共3步骤:
1)引进原材料 --- 创建一个空对象
2)加工原材料 --- 加工对象:给对象添加属性和方法;
3)输出产品 --- 返回对象:return 对象;

构造函数模式

  1. 可以自己指定一个函数,使用new产生对象

  2. 属性和方法直接赋值给this.

  3. 没有return,不能且不用返回任何的值.

构造函数和对象的关系

我们在javaScript里用构造函数来实现面向对象编程,ES6中使用class,vue和react里面使用的也是class
需要使用构造函数来new出对象,然后进行编程
构造函数可以产生任意多的对象.

总结

1 面向对象:将一个大的功能,分割成为一个小的对象,每一个对象实现不同的功能,彼此之间互相调用,返回结果,不需要关注实现的过程.

2 对象的产生方式

  • 自己声明

  • 系统构造函数生成

  • 自定义构造函数生成

3 构造函数:就是产生对象的,构造函数中的this指向,实例化对象

  • 5
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值