问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

面向对象编程的重要性在哪?

发布网友 发布时间:2022-04-23 15:24

我来回答

4个回答

热心网友 时间:2022-04-19 02:32

面向对象最重要的功能,是在语言层面,做出一些归类和划分。这给出了额外信息,有助于提高程序的可维护性,和可控。

也就是说,传达出,数据之间,函数之间,数据和函数之间的疏密和逻辑关系。通过对复杂任务,化整为零,实现分工协作和任务简化,这类似分治法。

同时,在编程模型中建立了对象的概念,通常更加切合人类的思考习惯,通过合理的封装,设计良好的对象接口,从而帮助人们更容易开发和管控自己的代码。

关于楼主提问,我补充下,OO 的选择 和 GUI 是完全独立无关的。GUI 也可以以面向过程的方式开发。在适合 OO 的各种场合(不一定是 GUI),采用 OO 来编程当然也是十分有益的。

然后面向对象的使用,人们很容易僵化,要谨防:

(1)过度OO。不必要的加深对象关系网络深度,会降低程序的可维护性和可控性,最终失控而导致项目失败。

(2)一些人对面向过程才去完全对立,这是一种教条主义和僵硬呆板的理解。实际上绝对的 OO,必然不是最正确的。不管强行 OO 只能是弄巧成拙的愚蠢人。意识不到,OO 并不是适用所有模型,或者说,很多场合,没有必要 OO和没有 OO 的特别收益。

实际情况,一般是 OO 和 面向过程两者的合理结合组合,来解决问题。而不是非此即彼的关系。

热心网友 时间:2022-04-19 03:50

基本特征就是它的重要性

1.抽象:

  抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节。比如,我们要设计一个学生成绩管理系统,考察学生这个对象时,我们只关心他的班级、学号、成绩等,而不用去关心他的身高、体重这些信息。抽象包括两个方面,一是过程抽象,二是数据抽象。过程抽象是指任何一个明确定义功能的操作都可被使用者看作单个的实体看待,尽管这个操作实际上可能由一系列更低级的操作来完成。数据抽象定义了数据类型和施加于该类型对象上的操作,并限定了对象的值只能通过使用这些操作修改和观察。

2.继承:  继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方法。对象的一个新类可以从现有的类中派生,这个过程称为类继承。新类继承了原始类的特性,新类称为原始类的派生类(子类),而原始类称为新类的基类(父类)。派生类可以从它的基类那里继承方法和实例变量,并且类可以修改或增加新的方法使之更适合特殊的需要。这也体现了大自然中一般与特殊的关系。继承性很好的解决了软件的可重用性问题。比如说,所有的Windows应用程序都有一个窗口,它们可以看作都是从一个窗口类派生出来的。但是有的应用程序用于文字处理,有的应用程序用于绘图,这是由于派生出了不同的子类,各个子类添加了不同的特性。

3.封装:

  封装是面向对象的特征之一,是对象和类概念的主要特性。封装是把过程和数据包围起来,对数据的访问只能通过已定义的界面。面向对象计算始于这个基本概念,即现实世界可以被描绘成一系列完全自治、封装的对象,这些对象通过一个受保护的接口访问其他对象。一旦定义了一个对象的特性,则有必要决定这些特性的可见性,即哪些特性对外部世界是可见的,哪些特性用于表示内部状态。在这个阶段定义对象的接口。通常,应禁止直接访问一个对象的实际表示,而应通过操作接口访问对象,这称为信息隐藏。事实上,信息隐藏是用户对封装性的认识,封装则为信息隐藏提供支持。封装保证了模块具有较好的独立性,使得程序维护修改较为容易。对应用程序的修改仅限于类的内部,因而可以将应用程序修改带来的影响减少到最低限度。

4. 多态性:

  多态性是指允许不同类的对象对同一消息作出响应。比如同样的加法,把两个时间加在一起和把两个整数加在一起肯定完全不同。又比如,同样的选择编辑-粘贴操作,在字处理程序和绘图程序中有不同的效果。多态性包括参数化多态性和包含多态性。多态性语言具有灵活、抽象、行为共享、代码共享的优势,很好的解决了应用程序函数同名问题。

面向对象程序设计具有许多优点:

1、开发时间短,效率高,可靠性高,所开发的程序更强壮。由于面向对象编程的可重用性,可以在应用程序中大量采用成熟的类库,从而缩短了开发时间。

2、应用程序更易于维护、更新和升级。继承和封装使得应用程序的修改带来的影响更加局部化。

热心网友 时间:2022-04-19 05:25

当然是对象了~

热心网友 时间:2022-04-19 07:16

继承 封装 多态
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
小米摄像头离线人在外地怎么办 win11如何固定电脑桌面图标 QQ三国的当代杰出少年是怎么得的? 三国人物风云榜的作者简介 三国人物风云榜作者简介 三国人物风云榜目录 三国人物风云榜内容提要 w10电脑不动黑屏w10系统开机黑屏只有鼠标箭头怎么回事 ...FRAMEWORK中的Action, Control, Resource, Model到底是什么关系... windframework特点 什么是面向对象的编程方法 为什么面向对象的编程是有用的 请问面向对象编程和面向过程编程的函数调用有什么应用上的不同呢? 什么叫做面向对象编程 面向对象程序设计的优点是什么? 面向对象编程是什么意思? 什么是面向对象编程? 面向对象编程是什么意思 iOS12抖音直播怎样关闭评论? 抖音直播间买东西,给了差评怎么删除 炒菜调味,二次调味时注意什么呢? 炒菜时放调料的先后顺序对菜有什么影响? 各种调味品加入的先后顺序怎样比较好? 炒菜时,调料放的先后顺序是什么样的? 做菜炝锅调料下锅的先后顺序? 炒菜放佐料的先后顺序! 炒菜的过程中,辅料放的先后顺序是什么? 放调料的时间顺序,对菜品的影响真的有这么大吗? 炒菜的过程中,放调料的先后顺序有差别吗? 皮皮虾除了煮着吃还能怎么做啊? 电视家没有遥控怎么投屏? 面向对象程序? 什么是面向对象?为什么要用面向对象的方法来编程??? 面向对象程序设计的学科应用 怎样把电视家2.0投到电视上 面向对象编程是什么 请教安卓手机上安装了电视家,如何导入节目源 怎么理解面向对象编程 如何简单的理解面向对象编程?? 小米电视如何直接进入电视家 小米电视如何安装电视家 徽商银行股份有限公司池州长江路支行怎么样? 徽商银行贷款13万,三年期限,算下来应该背利息13万在里面是*吗? 柿子干和什么不能一起吃 柿子干和花生能一起吃吗 柿子干不能和什么一起上吃 鸡蛋可以跟晒的干柿子在一起吃吗 请问干柿子和螃蟹可以一起吃 柿子干不能与什么同吃 柿子干不能和什么一起吃吗