`
gdpglc
  • 浏览: 90857 次
  • 性别: Icon_minigender_1
  • 来自: 长春
社区版块
存档分类
最新评论

面向对象编程 vs 面向过程编程

 
阅读更多
面向过程编缉是最容易让人理解的编程方式。将数据与逻缉分开,逻缉本身就是一些步骤。

面向对象支持:封装、继承、多态

封装:

面向对象的编程方法,要求把数据和数据相关的操作放到一个对象中,从而在语言层面上,支持逻缉的对象分解。这自然的使逻缉模块化了。程序的模块化,是大型程序所必须的,面向过程编程一样需要程序模块化。面向对象编程扩展了面向过程编程的模块划分方法。

对象分解,为逻缉分解提供了依据,从而导致逻缉的简洁表达(过程的表达,变为对相关对象发消息)和复用。

之所以会导致复用是因为
对象会出现在各种与它相关的逻缉中,这样对象自身的逻缉就可能被复用。这是面向对象编程的魔咒。更令人激动的是,软件中的对象是可以和领域对应上的。领域中的对象的可复用性,直接导致了软件中对应的对象的可复用性。

而面向过程编程的逻缉化分是随意的。在一个过程中混合多个对象的逻缉,很可能导致重复代码。


继承:

继承如果从复用方向理解,和面相向过程相比,并没什么新能力。而且java是单继承的,因此要想复用两个无关的类的功能是不可能的。

然而,继承所代来的革新是利用多态,在程序中直接表达泛化关系。
这是很重要的,使得程序可以处理抽象的对象,而不只是具体的对象。这正是人类处理问题的常用手段。

多态:
提供了将基类具体化的能力。

面向对象编缉改变了程序的内在结构,但注意:程序中的对象,并非是事物的等效表达。
对象的属性是对象相关的数据信息,而方法是外界可对对象进行的操作。也就是说,对象有什么方法,是由外界需要对它进行什么操作决定的。而不是对象天生固有的。

比如说:书, 是一个对象, 翻书是一个方法。而书需不需要有翻书的方法,取决于程序中是不是需要这个方法。又如:也许程序中需要一个方法计算书本身的分子总数,这样书对象就需要加上一个 “获得分子总数” 的方法了。
分享到:
评论

相关推荐

    java面向对象编程pdf

    面向对象编程(Object-Oriented Programming,OOP)是一种编程范式,它将程序设计看作是对象的交互,对象之间的关系和行为。 一、对象和类 在Java中,对象是指具有某些特征和行为的实体,例如人、学生、大象、冰箱...

    c++面向对象编程实例大全

    《C++面向对象编程实例大全》是一本专为初级学习者设计的教程,旨在通过丰富的实例深入浅出地讲解C++的面向对象编程概念。面向对象编程(Object-Oriented Programming,简称OOP)是C++的核心特性,也是现代软件开发...

    Labview面向对象编程

    Labview面向对象编程是NI...通过学习和掌握Labview面向对象编程,开发者可以构建出更复杂、更易于维护的应用程序,适应不断变化的需求,并利用Labview的强大功能进行数据分析、控制工程、测试测量等领域的项目开发。

    C#面向对象编程期末参考题

    【描述】提到“期末开卷参考题”,暗示我们将探讨一些学生在学习过程中可能遇到的实际问题或考试题目,这些题目可能会涵盖C#面向对象编程的基本原理、类与对象、继承、封装、多态等关键概念。 在C#中,面向对象编程...

    Matlab面向对象编程

    Matlab面向对象编程是一种在MATLAB环境下通过面向对象的方法来组织和构造程序代码的技术。面向对象编程(OOP)的基本特征包括抽象、封装、继承和多态。以下是根据给定的文件信息,对这些知识点的详细解释: 1. 抽象:...

    PLC的面向对象编程

    面向对象编程在PLC程序设计中具有明显的优越性,主要表现在以下方面: 1. 标准化:将输入输出参数、状态变量等中间变量统一到类中,提高代码的可读性和可维护性。尽管与高级编程语言在某些方面存在差异,但通过遵循...

    LabVIEW面向对象编程技术.pdf

    LabVIEW面向对象编程技术是 LabVIEW 软件开发工具中的一种编程技术,旨在解决大型 LabVIEW 程序的开发和维护问题。该技术基于面向对象编程思想,引入了类和对象的概念,通过类的定义和实例化来实现数据的封装和继承...

    面向对象编程思想

    面向对象编程思想 ...面向对象编程思想是一种新兴的程序设计方法,它可以提高软件的重用性和可维护性,提高软件的开发效率和质量。它已经成为当前计算机界关心的重点,并且在软件开发领域中有着广泛的应用前景。

    Java面向对象编程思想.pdf

    Java面向对象编程思想 Java 面向对象编程思想是 Java 编程语言的核心思想之一,通过封装、继承和多态三个... Java 面向对象编程思想的应用是广泛的,可以用于开发各种类型的应用程序,提高代码的灵活性和可维护性。

    《C++面向对象程序设计》第2版编程题答案

    《C++面向对象程序设计》是C++编程领域的一本经典教材,由清华大学出版社出版,龚晓庆、付丽娜等多位专家共同编著...通过对比答案,找出自己编程过程中的不足,可以有针对性地进行改进,加深对C++面向对象编程的理解。

    JAVA的面向对象编程笔记(经典)

    面向对象编程的思想不同于面向过程的思想,面向过程的思想是由过程、步骤、函数组成,以过程为核心。 九、面向对象编程的优点 面向对象编程的优点在于它可以使系统各部分各司其职、各尽所能,并且可以复用对象,...

    写给大家看的面向对象编程书

    面向对象编程(Object-Oriented Programming,简称OOP)是一种广泛应用的编程范式,它将程序设计中的实体抽象为对象,通过对象之间的交互来实现功能。这种编程方式使得代码更易于理解和维护,同时也增强了代码的复用...

    写给大家看的面向对象编程书(高清完整第三版)

    面向对象编程(Object-Oriented Programming,简称OOP)是一种广泛应用的编程范式,它将程序设计中的实体抽象为对象,通过对象之间的交互来实现功能。《写给大家看的面向对象编程书》作为一本面向初学者和进阶者的...

    面向对象VS面向过程

    两种主要的编程范式包括面向对象编程(Object-Oriented Programming,简称OOP)与面向过程编程(Procedural Programming)。本文将详细介绍这两种编程范式的区别,并通过比较它们的特点来帮助读者更好地理解两者之间...

    《面向对象的程序设计》期末试卷(A)答案.pdf

    类(Class)是面向对象编程的基本单元,它是一个蓝图,描述了创建对象时共有的属性和方法。对象(Object)是类的实例,具有类定义的属性和方法的副本。类的属性和方法称为成员(Members)。 2. 封装 封装...

    Visual C++ 面向对象编程教程——王育坚

    《Visual C++ 面向对象编程教程——王育坚》是一本专为学习MFC(Microsoft Foundation Classes)和面向对象编程技术而设计的教学资料。该教程以幻灯片的形式呈现,结合实例与详细的讲解,使得学习过程更为直观且易于...

Global site tag (gtag.js) - Google Analytics