面向对象与面向过程

什么是面向对象

面向对象(OOP)是把一个任务拆分为若干个小对象,然后通过各个对象之间的互动来完成任务。

面向对象更加注重对象和职责,不同的对象承担不同的职责。

比如说在食堂中,厨师可以看作一个对象,而我们只需要把炒菜的这个功能封装给到厨师,那么厨师就有了炒菜的功能,而主程序也就是食堂只要招聘一个厨师,那么这个食堂就有了炒菜的功能。同理食堂还有清洁的功能,我们只要招聘一个清洁工并把清洁的功能封装给清洁工,那么食堂就有了这个功能。所以一个完整的食堂都是由厨师,清洁工,打菜员等各个对象之间的互动来完成的。

所以面向对象就像是一个大的封装,根据对象的职责在各个对象中封装相应的功能。

面向过程

面向过程是把一个任务拆分为若干个小任务,然后按照整个一定的次序执行来完成任务。

面向过程比较注重步骤与过程,不注重职责分工,根据开发需求,将某些功能代码封装成一个又一个函数,最后就是顺序的调用不同的函数来完成任务。

还是在食堂中,根据需求要先炒菜,然后打菜,最后洗碗清洁等。我们需要根据这些步骤来封装炒菜,打菜,清洁的函数,最后在依次调用这些函数来完成食堂的功能。相比较于面向对象,面向过程的操作就多了许多。

面向对象与面向过程的区别

面向对象(谁来做)

1.在完成某一个需求前,确定职责。

2.根据职责确定不同的对象,在对象内部封装相应的功能。

3.顺序的让不同的对象调用不同的方法。

特点

1.注重对象和职责,不同的对象承担不同的职责。

2.更加适合应对复杂的需求变化,比较适合复杂的大型项目。

面向过程(怎么做)

1.把完成某一个需求的所有步骤从头到尾逐步实现。

2.根据需求将某些功能代码封装成一个又一个函数。

3.最后顺序的调用不同的函数。

特点

1.注重步骤与过程,没有明确的分工。

2.如果需求复杂,代码会变得复杂,甚至会出现调错函数的情况。

3.不适合大型的复杂项目。

什么是对象,类

万物皆可为对象,其实任何一个实体都可看作对象。比如一只猫可以是对象,狗可以是对象,飞机,火车也是一个对象。对象包含"属性(变量)"和"行为(方法)"两部分。属性描述这个对象是"什么样子",行为描述这个对象"能做什么"。比如一个公交车,它是绿色的,长为5米,宽为2米那么这个颜色和长宽就是公交车的属性;公交车还有自动开关门,加速,减速的功能,那么这些功能也就是公交车的行为。

类其实就是具有相同属性和方法的对象的集合。它定义了该集合中每个对象所共有的属性和方法。

比如说奔驰,宝马,奥迪等它们都具有行驶的功能,也有轮胎等属性,所以我们可以把它们规划为汽车类。还有像猫,狗,鸟等我们都可以规划为动物类。

简单的来说就是把相同或相似的对象划分为一起叫做类。

 

 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值