2024年10月面向对象方法讲解(面向对象方法的介绍)

 更新时间:2024-10-12

  ⑴面向对象方法讲解(面向对象方法的介绍

  ⑵面向对象方法(Object-OrientedMethod)是一种把面向对象的思想应用于软件开发过程中,指导开发活动的系统方法,简称OO(Object-Oriented)方法,是建立在“对象”概念基础上的方法学。对象是由数据和容许的操作组成的封装体,与客观实体有直接对应关系,一个对象类定义了具有相似性质的一组对象。而每继承性是对具有层次关系的类的属性和操作进行共享的一种方式。所谓面向对象就是基于对象概念,以对象为中心,以类和继承为构造机制,来认识、理解、刻画客观世界和设计、构建相应的软件系统。

  ⑶面向对象(ObjectOriented)是软件开发方法,一种编程范式。面向对象的概念和应用已超越了程序设计和软件开发,扩展到如数据库系统、交互式界面、应用结构、应用平台、分布式系统、网络管理结构、CAD技术、人工智能等领域。面向对象是一种对现实世界理解和抽象的方法,是计算机编程技术发展到一定阶段后的产物。面向对象是相对于面向过程来讲的,面向对象方法,把相关的数据和方法组织为一个整体来看待,从更高的层次来进行系统建模,更贴近事物的自然运行模式。

  ⑷什么是对象什么是面向对象方法

  ⑸定义一:面向对象方法是一种运用对象、类、封装、继承、多态和消息等概念来构造、测试、重构软件的方法。定义二:面向对象方法是以认识论为基础,用对象来理解和分析问题空间,并设计和开发出由对象构成的软件系统(解空间的方法。由于问题空间和解空间都是由对象组成的,这样可以消除由于问题空间和求解空间结构上的不一致带来的问题。简言之,面向对象就是面向事情本身,面向对象的分析过程就是认识客观世界的过程。面向对象方法从对象出发,发展出对象,类,消息,继承等概念。面向对象方法的主要优点是:符合人们通常的思维方式;从分析到设计再到编码采用一致的模型表示具有高度连续性;软件重用性好。

  ⑹面向对象方法的基本概念

  ⑺用计算机解决问题需要用程序设计语言对问题加以描述并求解(即编程,实质上,软件是问题求解的一种表述形式。显然,假如软件能直接表现人求解问题的思维路径(即求解问题的方法,那么软件不仅容易被人理解,而且易于维护和修改,从而会保证软件的可靠性和可维护性,并能提高公共问题域中的软件模块和模块重用的可靠性。面向对象的方法恰好可以使得程序设计按照人们通常的思维方式来建立问题域的模型,设计出尽可能自然地表现求解方法的软件。面向对象的基本概念继承性(Inheritance是指,在某种情况下,一个类会有“子类”。子类比原本的类(称为父类要更加具体化。例如,“狗”这个类可能会有它的子类“牧羊犬”和“吉娃娃犬”。在这种情况下,“莱丝”可能就是牧羊犬的一个实例。子类会继承父类的属性和行为,并且也可包含它们自己的。我们假设“狗”这个类有一个方法(行为叫做“吠叫()”和一个属性叫做“毛皮颜色”。它的子类(前例中的牧羊犬和吉娃娃犬会继承这些成员。这意味着程序员只需要将相同的代码写一次。在伪代码中我们可以这样写:类牧羊犬:继承狗定义莱丝是牧羊犬莱丝.吠叫()/*注意这里调用的是狗这个类的吠叫方法。*/回到前面的例子,“牧羊犬”这个类可以继承“毛皮颜色”这个属性,并指定其为棕白色。而“吉娃娃犬”则可以继承“吠叫()”这个方法,并指定它的音调高于平常。子类也可以加入新的成员,例如,“吉娃娃犬”这个类可以加入一个方法叫做“颤抖()”。设若用“牧羊犬”这个类定义了一个实例“莱丝”,那么莱丝就不会颤抖,因为这个方法是属于吉娃娃犬的,而非牧羊犬。事实上,我们可以把继承理解为“是”或“属于”。莱丝“是”牧羊犬,牧羊犬“属于”狗类。因此,莱丝既得到了牧羊犬的属性,又继承了狗的属性。我们来看伪代码:类吉娃娃犬:继承狗开始公有成员:颤抖()结束类牧羊犬:继承狗定义莱丝是牧羊犬莱丝.颤抖()/*错误:颤抖是吉娃娃犬的成员方法。*/当一个类从多个父类继承时,我们称之为“多重继承”。如一只狗既是吉娃娃犬又是牧羊犬(虽然事实上并不合逻辑。多重继承并不总是被支持的,因为它很难理解,又很难被好好使用。具备封装性(Encapsulation的面向对象程序设计隐藏了某一方法的具体执行步骤,取而代之的是通过消息传递机制传送消息给它。因此,举例来说,“狗”这个类有“吠叫()”的方法,这一方法定义了狗具体该通过什么方法吠叫。但是,莱丝的朋友并不知道它到底是如何吠叫的。从实例来看:/*一个面向过程的程序会这样写:*/定义莱丝莱丝.设置音调()莱丝.吸气()莱丝.吐气()/*而当狗的吠叫被封装到类中,任何人都可以简单地使用:*/定义莱丝是狗莱丝.吠叫()封装是通过限制只有特定类的对象可以访问这一特定类的成员,而它们通常利用接口实现消息的传入传出。举个例子,接口能确保幼犬这一特征只能被赋予狗这一类。通常来说,成员会依它们的访问权限被分为种:公有成员、私有成员以及保护成员。有些语言更进一步:Java可以限制同一包内不同类的访问;C#和VB.保留了为类的成员聚集准备的关键字:internal(C#和Friend(VB.;Eiffel语言则可以让用户指定哪个类可以访问所有成员。多态(Polymorphism是指由继承而产生的相关的不同的类,其对象对同一消息会做出不同的响应。例如,狗和鸡都有“叫()”这一方法,但是调用狗的“叫()”,狗会吠叫;调用鸡的“叫()”,鸡则会啼叫。我们将它体现在伪代码上:类狗开始???公有成员:???????叫()???????开始??????????吠叫()???????结束结束类鸡开始???公有成员:???????叫()???????开始??????????啼叫()???????结束结束定义莱丝是狗定义鲁斯特是鸡莱丝.叫()鲁斯特.叫()这样,虽然同样是做出叫这一种行为,但莱丝和鲁斯特具体做出的表现方式将大不相同。多态性的概念可以用在运算符重载上,本文不再赘述。继承性是子类自动共享父类之间数据和方法的机制。它由类的派生功能体现。一个类直接继职其它类的全部描述,同时可修改和扩充。继职具有传达室递性。继职分为单继承(一个子类只有一父类和多重继承(一个类有多个父类。类的对象是各自封闭的,如果没继承性机制,则类对象中数据、方法就会出现大量重复。继承不仅支持系统的可重用性,而且还促进系统的可扩充性。对象根据所接收的消息而做出动作。同一消息为不同的对象接受时可产生完全不同的行动,这种现象称为多态性。利用多态性用户可发送一个通用的信息,而将所有的实现细节都留给接受消息的对象自行决定,如是,同一消息即可调用不同的方法。例如:Print消息被发送给一图或表时调用的打印方法与将同样的Print消息发送给一正文文件而调用的打印方法会完全不同。多态性的实现受到继承性的支持,利用类继承的层次关系,把具有通用功能的协议存放在类层次中尽可能高的地方,而将实现这一功能的不同方法置于较低层次,这样,在这些低层次上生成的对象就能给通用消息以不同的响应。在OOPL中可通过在派生类中重定义基类函数(定义为重载函数或虚函数来实现多态性。综上可知,在OO方法中,对象和传递消息分别表现事物及事物间相互联系的概念。类和继承是是适应人们一般思维方式的描述范式。方法是允许作用于该类对象上的各种操作。这种对象、类、消息和方法的程序设计范式的基本点在于对象的封装性和类的继承性。通过封装能将对象的定义和对象的实现分开,通过继承能体现类与类之间的关系,以及由此带来的动态联编和实体的多态性,从而构成了面向对象的基本特征。

  ⑻什么是面向对象的开发方法

  ⑼面向对象(ObjectOriented,OO)是软件开发方法。面向对象的概念和应用已超越了程序设计和软件开发,扩展到如数据库系统、交互式界面、应用结构、应用平台、分布式系统、网络管理结构、CAD技术、人工智能等领域。面向对象是一种对现实世界理解和抽象的方法,是计算机编程技术发展到一定阶段后的产物。、随着计算机技术的不断提高,计算机被用于解决越来越复杂的问题。一切事物皆对象,通过面向对象的方式,将现实世界的事物抽象成对象,现实世界中的关系抽象成类、继承,帮助人们实现对现实世界的抽象与数字建模。通过面向对象的方法,更利于用人理解的方式对复杂系统进行分析、设计与编程。同时,面向对象能有效提高编程的效率,通过封装技术,消息机制可以像搭积木的一样快速开发出一个全新的系统。面向对象是指一种程序设计范型,同时也是一种程序开发的方法。对象指的是类的集合。它将对象作为程序的基本单元,将程序和数据封装其中,以提高软件的重用性、灵活性和扩展性。、面向对象的程序设计方法与编程技术不同于标准的过程化程序设计。程序设计人员在进行面向对象的程序设计时,不再是单纯地从代码的第一行一直编到最后一行,而是考虑如何创建对象,利用对象来简化程序设计,提供代码的可重用性。对象可以是应用程序的一个自包含组件,一方面具有私有的功能,供自己使用;另一方面又提供公用的功能,供其他用户使用。、面向对象编程的一个优点是代码重用;重用对象比起复制源代码来要容易的多,而且如果使用的是强健的、封装的代码,则会更安全些。

  ⑽面向对象方法的要点有哪些

  ⑾Java类及类的成员:属性、方法、构造器(高频;代码块、内部类(低频(类是由对象派生的

  ⑿面向对象的三大特征:封装(Encapsulation)、继承(Inheritance)、多态(Polymorphism)、(抽象性)

  ⒀其它关键字:this、super、static、final、abstract、interface、package、import等

  ⒁面向过程(ProcedureOrientedProgramming)与面向对象(ObjectOrientedProgramming)的理解

  ⒂面向对象是相对于面向过程而言的。面向过程,强调的是功能行为,以函数为最小单位,考虑怎么做。

  ⒃面向对象,将功能封装进对象,强调具备了功能的对象,以类/对象为最小单位,考虑谁来做。而且更加强调运用人类在日常的思维逻辑中采用的思想方法与原则,如抽象、分类、继承、聚合、多态等。

  ⒄面向过程:强调的是功能行为,以函数为最小单位,考虑怎么做。.面向对象:强调具备功能得对象,以类/对象为最小单位,考虑谁来做。

  ⒅面向过程:强调的是功能行为,以函数为最小单位,考虑怎么做。

  ⒆面向对象:强调具备了功能的对象,以类/对象为最小单位,考虑谁来做。

  ⒇类(Class)和对象(Object)是面向对象的核心概念。类是对一类事物的描述,是抽象的、概念上的定义对象是实际存在的该类事物的每个个体,因而也称为实例(instance)。

  ⒈程序员从面向过程的执行者转化成了面向对象的指挥者面向对象分析方法分析问题的思路和步骤:

  ⒉根据问题需要,选择问题所针对的现实世界中的实体。

  ⒊从实体中寻找解决问题相关的属性和功能,这些属性和功能就形成了概念世界中的类。

  ⒋把抽象的实体用计算机语言进行描述,形成计算机世界中类的定义。即借助某种程序语言,把类构造成计算机能够识别和处理的数据结构。

  ⒌将类实例化成计算机世界中的对象。对象是计算机世界中解决问题的最终工具。

  ⒍面向对象的两个要素:类和对象类:对一类事物的描述,是抽象的、概念上的定义

  ⒎对象:是实际存在的该类事物的每个个体(实实在在的个体,因而也称为实例(instance)。以人为例子:类=抽象概念的人;对象=实实在在的某个人

  ⒏面向对象程序设计的重点是类的设计

  ⒐设计类,就是设计类的成员。

  ⒑二者关系:对象是由类派生(new)出来的、对象是类的实例化

  ⒒类的结构:属性和方法

  ⒓现实世界的生物体,大到鲸鱼,小到蚂蚁,都是由最基本的细胞构成的。同理,Java代码世界是由诸多个不同功能的类构成的。现实生物世界中的细胞又是由什么构成的呢?细胞核、细胞质、…那么,Java中用类class来描述事物也是如此。常见的类的成员有:属性:对应类中的成员变量行为:对应类中的成员方法

  ⒔类和对象的创建和执行操作有那三步(落地实现的规则?

  ⒕创建类,设计类的成员②类的实例化(创建类的对象③通过“对象.属性”或“对象.方法”调用对象的结构

  ⒖属性=成员变量=Field=域、字段

  ⒗方法=成员方法=Method=函数

  ⒘创建类的对象=类的实例化=实例化类

  ⒙最通俗地解释面向对象

  ⒚面向对象(ObjectOriented,OO)是软件开发方法。面向对象的概念和应用已超越了程序设计和软件开发,扩展到如数据库系统、交互式界面、应用结构、应用平台、分布式系统、网络管理结构、CAD技术、人工智能等领域。面向对象是一种对现实世界理解和抽象的方法,是计算机编程技术发展到一定阶段后的产物。

  ⒛面向对象分析方法的五个步骤是啥

  第一步,确定对象和类。这里所说的对象是对数据及其处理方式的抽象,它反映了系统保存和处理现实世界中某些事物的信息的能力。类是多个对象的共同属性和方法集合的描述,它包括如何在一个类中建立一个新对象的描述。第二步,确定结构(structure。结构是指问题域的复杂性和连接关系。类成员结构反映了泛化-特化关系,整体-部分结构反映整体和局部之间的关系。第三步,确定主题(subject。主题是指事物的总体概貌和总体分析模型。第四步,确定属性(attribute。属性就是数据元素,可用来描述对象或分类结构的实例,可在图中给出,并在对象的存储中指定。第五步,确定方法(method。方法是在收到消息后必须进行的一些处理方法:方法要在图中定义,并在对象的存储中指定。对于每个对象和结构来说,那些用来增加、修改、删除和选择一个方法本身都是隐含的(虽然它们是要在对象的存储中定义的,但并不在图上给出,而有些则是显示的。

  对象是由数据和容许的操作组成的封装体,与客观实体有直接对应关系,一个对象类定义了具有相似性质的一组对象。而每继承性是对具有层次关系的类的属性和操作进行共享的一种方式。所谓面向对象就是基于对象概念,以对象为中心,以类和继承为构造机制,来认识、理解、刻画客观世界和设计、构建相应的软件系统。面向对象方法的具体实施步骤如下:)面向对象分析:从问题陈述入手,分析和构造所关心的显示世界问题域的模型,并用相应的符号系统表示。模型必须是简洁、明确地抽象目标系统必须做的事,而不是如何做。分析步骤为:()确定问题域,包括定义论域,选择论域,根据需要细化和增加论域;()区分类和对象,包括定义对象,定义类、命名;()区分整体对象以及组成部分,确定类的关系以及结构;()定义属性,包括确定属性,安排属性;()定义服务,包括确定对象状态,确定所需服务,确定消息联结;()确定附加的系统约束。)面向对象设计:面向对象的设计与传统的以功能分解为主的设计有所不同。具体设计步骤为:()应用面向对象分析,对用其他方法得到的系统分析的结果进行改进和完善;()设计交互过程和用户接口;⑶设计任务管理,根据前一步骤确定是否需要多重任务,确定并发性,确定以何种方式驱动任务,设计子系统以及任务之间的协调与通信方式,确定优先级;()设计全局资源,确定边界条件,确定任务或子系统的软、硬件分配;()对象设计。)面向对象实现:使用面向对象语言实现面向对象的设计相对比较容易。如果用非面向对象语言实现面向对象的设计时,特别需要注意和规定保留程序的面向对象结构。传统的面向功能的方法学中,强调的是确定和分解系统功能,这种做法虽然是目标的最直接的实现方式,但是由于功能是软件系统中最不稳定、最容易变化的方面,因而使系统难以维护和扩展。面向对象设计首先强调来自域的对象,然后围绕对象设置属性和操作。用面向对象设计,其结构源于客观世界稳定的对象结构。因而与传统软件设计方法相比,明显提高了软件的生产率,可靠性,易重用性、易维护性等方面的效果。

您可能感兴趣的文章:

相关文章