主页 > logo设计 > 面向对象程序设计好学吗(面向对象程序设计有哪些优点)

面向对象程序设计好学吗(面向对象程序设计有哪些优点)

2022-12-17 08:33来源:m.sf1369.com作者:宇宇

1. 面向对象程序设计有哪些优点

C语言是面向过程的编程,它的最重要特点是函数,通过主函数来调用一个个子函数。程序运行的顺序都是程序员决定好了的。它是我学的第一种程序语言。C++是面向对象的编程,类是它的主要特点,程序执行过程中,先由主函数进入,定义一些类,根据需要,执行类的成员函数,过程的概念被淡化了(实际上过程还是有的,就是主函数的那些语句),类就是对象,所以我们称之为面向对象程序设计。现在我学了Visual C++,有了很多体会。

它是面向事件的编程,程序执行时,不断检测有没有事件(消息)发生,如果有,那么就看有没有对应于事件的函数,如果有就执行这个函数。

相比之下,它过程式的味道几乎没有了,但是实际上也是面向过程的,这个过程就是检验有没有事件,只不过这个过程被隐藏了起来。到目前为止,我没发现真正的没有过程的程序。

2. 面向对象程序设计的三大特点

C++是在C语言基础上进行扩展而来的一门面向对象的程序设计语言。相比其他语言,它具有很多优点和特点的,比如:在性能方面,C++代码被最终编译成本地机器码,可直接由CPU执行,相比Javascript,VBScript等由脚本引擎解析执行的脚本语言,或者Java这类生成中间代码再由虚拟机执行的语言,效率就高了很多。

虽然,汇编语言和C语言的效率更高,但是C++的支持面向对象的特性很好的解决了代码的重用、重构、修改和扩展。C++支持函数重载,比如写一个求和的函数 int sum(int a,int b) ,这个函数只能去整数求和,如果在C语言里,我们要对浮点型数求和,就必须再写一个函数 float sum2(float a,float b),调用的时候,必须根据要求和的数的类型选择调用 sum 还是 sum2;而在C++里,我们可以直接写两个同名的函数 int sum(int a,int b),float sum(float a,float b)调用的时候不管是浮点型还是整型,都直接调用sum,编译器能为我们自动的选择应该调用哪一个函数。

对面向对象的支持,让我们可以将一个功能模块封装成一个类,对于使用这个功能模块的人,只需调用这个类的方法就可以了,不必关心功能如何实现的,这一点可以在开发大型项目的时候提高开发效率,减少开发周期。同时,可以通过对类进行派生来扩展模块的功能,而不影响原有的功能。

C++的异常处理机制可以很好地对代码的异常进行捕捉,保证了在程序运行时出现错误不至于整个崩溃掉,也为我们对于运行时错误的处理提供了一种有效的途径。

C++不像VB和易语言等,把很多东西都封装起来了,对开发者不可见,所以无法理解其深层的原理,C++里很多东西都要程序员自己实现,这也增加了开发难度。

C++程序的依赖性小,不像VB需要很多控件库,java需要java虚拟机,C#、VB.NET需要.net框架支持。对C++代码进行静态连接,就能保证生成的可执行程序在别的电脑上直接运行。

要注意的是,面向对象的程序设计(OOP)是一种编程的方法或者说理念,它不属于C++语言。支持这种设计方面的语言都是面向对象的语言,C++只是其中之一。封装、继承和多态是面向对象程序设计的三大特点

3. 面向对象程序设计有哪些优点和缺点

1、易维护采用面向对象思想设计的结构,可读性高,由于继承的存在,即使改变需求,那么维护也只是在局部模块,所以维护起来是非常方便和较低成本的。

2、质量高在设计时,可重用现有的,在以前的项目的领域中已被测试过的类使系统满足业务需求并具有较高的质量。

3、效率高在软件开发时,根据设计的需要对现实世界的事物进行抽象,产生类。使用这样的方法解决问题,接近于日常生活和自然的思考方式,势必提高软件开发的效率和质量。

4、易扩展由于继承、封装、多态的特性,自然设计出高内聚、低耦合的系统结构,使得系统更灵活、更容易扩展,而且成本较低。

4. 面向对象程序设计有哪些优点和不足

  “面向过程程序设计”、主要是为拉大型的工程计算或者为拉完成某个任务而求出结果的对界面则要求不高其优点是运行速度快“面向对象程序设计”主要是对各种事物能形象的描述并且模拟在计算机上运行它兼容以上面向过程的好多功能优点是界面比较好做缺点执行速度和容量没有上面的快结构化程序设计对于以上二者均适合这只是说明设计是的思路和方法按照俺自己的理解:前者是按照人们日常做事的顺序来设计语言,即无论做什么事都是按照顺序来执行的,一个个的功能模块都是联系在一起的。总之:做事是有一个个的动作完成的。后者则是把我们客观世界里的事物都封装起来,各个事物之间是相互独立的。做什么事情都是由一个个的事物共同完成的,而不是顺序执行。总之:做事是由一个个的事物共同完成的。

5. 面向对象程序的优点

首先两个的概念都有分而治之的设计想法。结构化的着力点是功能,以功能切割为各自模块进行实现的方式,它是直接面对解决需求问题而来。它将功能分割成小块,使各自的区域隔离解耦,也就是分模块。

然后根据设计流程再将这些模块拼接起来,就可以形成一个比较完善功能的程序项目。

面向对象,它的基石当然就是对象了。通过分析项目需求搭建对象模型,分析对象的功能及关系。

面向对象也是要模块化的,这一点和结构化的模块相近但不同。

结构化中模块是基础是自然产物,面向对象中模块化是设计思考的方式。

看清楚两者的根本,再去看它们的那些xx设计xx说明xx思想,就不至于混乱了。

两者并非对立或者分歧,都是发展历程上的丰碑。

优点的话 对象有很多,应该都常识了,问题就是 很容易过度抽象过度设计过度分离过度xx。

结构化的话,优点是直接,围绕着解决问题实现功能为目的,至于缺点那就 是面向对象的优点 取反。找了一段论文里得结论,补充下。程序设计方法的发展经历了 4 代,结构化和面向对象是软件工程的程序设计方法中最本质的思想方法,结构化体现了抽象思维和复杂问题求解的基本原则,面向对象则深刻反映了客观世界由对象组成这一本质特点。

各种程序设计方法的一个重要区别在于问题分解的出发点不同(因子),思维模式不同。

计算机中数据结构和过程是密切相关的,结构化方法将数据结构和过程分开考虑,面向对象的方法组合数据和过程于对象之中。

理论上,对象式实际方法将产生更好的模块内聚和耦合特性,使得软件更易于重用与维护,但在实践中程序设计方法需要工具和环境的支撑,需要考虑软件生命周期的各个环节,在选择程序设计方法时,需要综合考虑这些因素。

6. 面向对象程序设计有什么特点

Cocos2d是使用C++实现,C++是C语言的继承,该语言既可以进行C语言的过程化程序设计,又可以进行以抽象数据类型为特点的基于对象的程序设计,还可以进行以继承和多态为特点的面向对象的程序设计。

C++特点

支持数据封装和数据隐藏

在C++中,类是支持数据封装的工具,对象则是数据封装的实现。C++通过建立用户定义类支持数据封装和数据隐藏。

在面向对象的程序设计中,将数据和对该数据进行合法操作的函数封装在一起作为一个类的定义。对象被说明为具有一个给定类的变量。每个给定类的对象包含这个类所规定的若干私有成员、公有成员及保护成员。完好定义的类一旦建立,就可看成完全封装的实体,可以作为一个整体单元使用。类的实际内部工作隐藏起来,使用完好定义的类的用户不需要知道类是如何工作的,只要知道如何使用它即可。

支持继承和重用

在C++现有类的基础上可以声明新类型,这就是继承和重用的思想。通过继承和重用可以更有效地组织程序结构,明确类间关系,并且充分利用已有的类来完成更复杂、深入的开发。新定义的类为子类,成为派生类。它可以从父类那里继承所有非私有的属性和方法,作为自己的成员。

支持多态性

采用多态性为每个类指定表现行为。多态性形成由父类和它们的子类组成的一个树型结构。在这个树中的每个子类可以接收一个或多个具有相同名字的消息。当一个消息被这个树中一个类的一个对象接收时,这个对象动态地决定给予子类对象的消息的某种用法。多态性的这一特性允许使用高级抽象。

继承性和多态性的组合,可以轻易地生成一系列虽然类似但独一无二的对象。由于继承性,这些对象共享许多相似的特征。由于多态性,一个对象可有独特的表现方式,而另一个对象有另一种表现方式。

7. 面向对象程序设计的优点是什么

面向对象程序设计(Object-oriented programming,OOP)是种具有对象概念的程序编程范型,同时也是一种程序开发的方法。它可能包含数据、属性、代码与方法。对象则指的是类的实例。它将对象作为程序的基本单元,将程序和数据封装其中,以提高软件的重用性、灵活性和扩展性,对象里的程序可以访问及经常修改对象相关连的数据。

在面向对象程序编程里,计算机程序会被设计成彼此相关的对象。

8. 面向对象程序设计的四大特点

多态指同一个实体同时具有多种形式。它是面向对象程序设计(OOP)的一个重要特征。

如果一个语言只支持类而不支持多态,只能说明它是基于对象的,而不是面向对象的。

C++中的多态性具体体现在运行和编译两个方面。运行时多态是动态多态,其具体引用的对象在运行时才能确定。

编译时多态是静态多态,在编译时就可以确定对象使用的形式。多态:同一操作作用于不同的对象,可以有不同的解释,产生不同的执行结果。在运行时,可以通过指向基类的指针,来调用实现派生类中的方法。

C++中,实现多态有以下方法:虚函数,抽象类,覆盖,模板(重载和多态无关)。OC中的多态:不同对象对同一消息的不同响应.子类可以重写父类的方法多态就是允许方法重名 参数或返回值可以是父类型传入或返回。多态也指生物学中腔肠动物的特殊的生活方式。水螅态与水母态的世代交替现象。

9. 面向对象程序设计的优点

(1)从问题域中客观存在的事物出发来构造软件系统,用对象作为对这些事物的抽象表示,并以此作为系统的基本构成单位。 (2)事物的静态特征(即可能用一些数据来表达的特征)用对象的属性表示,事物的动态特征(即事物的行为)用对象的服务表示。 (3)对象的属性与服务结合为一体,成为一个独立的实体,对外屏蔽其内部细节,即封装。 (4)对事物进行分类。把具有相同属性和服务的对象归为一类,类是这些对象的抽象描述,每个对象是它的类的一个示例。 (5)通过在不同程度上运用抽象的原则,可以得到较一般的类和较特殊的类。特殊类继承一般类的属性与服务,面向对象方法支持对这种继承关系的描述与实现,从而简化系统的构造过程及其文档。 (6)复杂的对象可以用简单的对象作为其构成部分,称作聚合。 (7)对象之间通过消息进行通信,以实现对象之间的动态联系。 (8)通过关联表达对象之间的静态关系。

10. 面向对象程序设计的优点主要有哪些

产生一个满足用户需求,并且完全可实现的系统模型,即OOD模型。

面向对象特征

1、对象唯一性。

每个对象都有自身唯一的标识,通过这种标识,可找到相应的对象。在对象的整个生命期中,它的标识都不改变,不同的对象不能有相同的标识。

2、抽象性。

抽象性是指将具有一致的数据结构(属性)和行为(操作)的对象抽象成类。一个类就是这样一种抽象,它反映了与应用有关的重要性质,而忽略其他一些无关内容。任何类的划分都是主观的,但必须与具体的应用有关。

3、继承性。

继承性是子类自动共享父类数据结构和方法的机制,这是类之间的一种关系。在定义和实现一个类的时候,可以在一个已经存在的类的基础之上来进行,把这个已经存在的类所定义的内容作为自己的内容,并加入若干新的内容。

11. 面向对象程序设计有哪些优点?

结构化程序设计从系统的功能入手(有的用户也成为面向过程的设计),按照工程的标准和严格的规范将系统分解为若干功能模块,系统是实现模块功能的函数和过程的集合。

面向对象程序设计从所处理的数据入手,以数据为中心而不是以服务(功能)为中心来描述系统。他把编程问题视为一个数据集合,数据相对于功能而言,具有更强的稳定性。

面向对象程序设计是一种围绕真实世界的概念来组织模型的程序设计方法,它使用对象来描述问题空间的实例。

相关推荐

∧LPH∧是药品的什么标志

logo设计 2023-12-17

标志为大写g的游戏公司

logo设计 2023-12-16

中国银行徽标的意义是什么

logo设计 2023-12-16