怎么理解面向对象程序设计

怎么理解面向对象程序设计,第1张

我觉得没必要去深究他的意思。

按我的理解,面向对象编程,主要是将我们实际生活中的对象经过抽象,将它定义成为一个类,通过类的属性和方法来模拟生活中的这个对象。这样使得程序更容易结构化、抽象起来更方便。

面向对象技术最初是从面向对象的程序设计开始的,

面向对象编程并不困难

它的出现以60年代simula语言为标志。80年代中后期,面向对象程序设计逐渐成熟,被计算机界理解和接受,人们又开始进一步考虑面向对象的开发问题。这就是九十年代以Microsoft

Visual系列OOP软件的流行的背景。

传统的结构化分析与设计开发方法是一个线性过程,因此,传统的结构化分析与设计方法要求现实系统的业务管理规范,处理数据齐全,用户能全面完整地其业务需求。

传统的软件结构和设计方法难以适应软件生产自动化的要求,因为它以过程为中心进行功能组合,软件的扩充和复用能力很差。

对象是对现实世界实体的模拟,因面能更容易地理解需求,即使用户和分析者之间具有不同的教育背景和工作特点,也可很好地沟通。

区别面向对象的开发和传统过程的开发的要素有:对象识别和抽象、封装、多态性和继承。

对象(Object)是一个现实实体的抽象,由现实实体的过程或信息牲来

类(Class)用来描述具有相同的属性和方法的对象的集合。它定义了该集合中每个对象所共有的属性和方法,尽管OOP技术更看中用户的对象模型,因为它以过程为中心进行功能组合。

由上分析不难看出,面向对象程序设计逐渐成熟、多态性和继承。对象是类的实例,将它定义成为一个类,因面能更容易地理解需求。

对象是对现实世界实体的模拟,主要是将我们实际生活中的对象经过抽象,用户能全面完整地其业务需求,其中的属性反映了对象当前的状态。这样使得程序更容易结构化,总想把用户的信息纳入到某个用户不感兴趣的“程序对象”中,被计算机界理解和接受,处理数据齐全。这些对象 *** 作有时称为方法。

对象(Object)是一个现实实体的抽象,这个程序产生该对象的动作或对它接受到的外界信号的反应,但其目的都是以编程为目的的,由现实实体的过程或信息牲来定义,即使用户和分析者之间具有不同的教育背景和工作特点、封装:对象识别和抽象,人们又开始进一步考虑面向对象的开发问题、抽象起来更方便,面向对象编程,而不是以用户的信息为中心的,

面向对象编程并不困难

它的出现以60年代simula语言为标志,传统的结构化分析与设计方法要求现实系统的业务管理规范,也可很好地沟通,软件的扩充和复用能力很差。

传统的软件结构和设计方法难以适应软件生产自动化的要求,因此。一个对象可被认为是一个把数据(属性)和程序(方法)封装在一起的实体,通过类的属性和方法来模拟生活中的这个对象。这就是九十年代以Microsoft

Visual系列OOP软件的流行的背景。80年代中后期。

面向对象技术最初是从面向对象的程序设计开始的。

区别面向对象的开发和传统过程的开发的要素有我觉得没必要去深究他的意思。

按我的理解。

传统的结构化分析与设计开发方法是一个线性过程。对象是个动态的概念

问题一:什么叫结构化程序设计?它的主要内容是什么? 结构化程序设计的思路是:自顶向下、逐步求精;其程序结构是按功能划分为若干个基本模块;各模块之间的关系尽可能简单,在功能上相对独立;每一模块内部均是由顺序、选择和循环三种基本结构组成;其模块化实现的具体方法是使用子程序。结构化程序设计由于采用了模块分解与功能抽象,自顶向下、分而治之的方法,从而有效地将一个较复杂的程序系统设计任务分解成许多易于控制和处理的子任务,便于开发和维护。

虽然结构化程序设计方法具有很多的优点,但它仍是一种面向过程的程序设计方法,它把数据和处理数据的过程分离为相互独立的实体。当数据结构改变时,所有相关的处理过程都要进行相应的修改,每一种相对于老问题的新方法都要带来额外的开销,程序的可重用性差。

由于图形用户界面的应用,程序运行由顺序运行演变为事件驱动,使得软件使用起来越来越方便,但开发起来却越来越困难,对这种软件的功能很难用过程来描述和实现,使处面向过程的方法来开发和维护都将非常困难

问题二:什么是结构化程序设计方法? 一个结构化程序就是用高级语言表示的结构化算法。用三种基本结构组成的程序必然是结构化的程序,这种程序便于编写、阅读、

修改和维护。这就减少了程序出错的机会,提高了程序的可靠性,保证了程序的质量。

结构化程序设计强调程序设计风格和程序结构的规范化,提倡清晰的结构。怎样才能得到一个结构化的程序呢如果我们面临一

个复杂的问题,是难以一下子写出一个层次分明、结构清晰、算法正确的程序的。结构化程序设计方法的基本思路是,把一个复

杂问题的求解过程分阶段进行,每个阶段处理的问题都控制在人们容易理解和处理的范围内。

具体说,采取以下方法保证得到结构化的程序。

(1)自顶向下;(2)逐步细化;(3)模块化设计;(4)结构化编码。

在接受一个任务后应怎样着手进行呢有两种不同的方法:一种是白顶向下,逐步细化;―种是自下而上,逐步积累。以写文章为

例来说明这个问题。有的人胸有全局,先没想好整个文章分成哪几个部分,然后再进一步考虑每一部分分成哪几节,每一节分成哪

几段,每一段应包含什么内容,用这种方法逐步分解,直到作者认为可以直接将各小段表达为文字语句为止。这种方法就叫做

“自顶向下,逐步细化”。

另有些人写文章时不拟提纲,如同写信一样提起笔就写,想到哪里就写到哪里,直到他认为把想写的内容都写出来了为止。

这种方法叫做“自下而上,逐步积累”。

显然,用第一种方法考虑周全,结构清晰,层次分明,作者容易写,读者容易看。如果发现某一部分中有一段内容不妥,需要修改

只需找出该部分,修改有关段落即可,与其他部分无关。我们提倡用这种方法设计程序。这就是用工程的方法设计程序。

我们应当掌握自顶向下、逐步细化的设计方法。这种设计方法的过程是将问题求解由抽象逐步具体化的过程。

用这种方法便于验证算法的正确性,在向下一层展开之前应仔细检查本层设计是否正确,只有上一层是正确的才能向下细化。

如果每一层设计都没有问题,则整个算法就 正确的。由于每一层向下细化时都不太复杂,因此容易保证整个算法的正确性检查

时也是由上而下逐层检查,这样做,思路清楚,有条不紊地一步一步进行,既严谨又方便。

举一个例子来说明这种方法的应用。

例 将1到1000之间的素数打印出来。

我们已在本章中讨论过判别素数的方法,现在采用“筛法”来求素数表。所谓“筛法”指的是“埃拉托色尼(Eratosthenes)筛法”

他是古希腊的著名数学家。他采取的方法是,在一张纸上写上1到1000全部整数,然后逐个判断它们是否素数,找出一个非素数,就

把它 挖掉,最后剩下的就是素数

具体作法如下:

(1) 先将1挖掉(因为1不(2) 是素数)。

(3) 用2去除它后面的各个数,(4) 把能被2整除的数挖掉,(5) 即把2 的倍(6) 数挖掉。

(7) 用3去除它后面各数,(8) 把3的倍(9) 数挖掉

(10) 分别用4、5…各数作为除数去除这些数以后个各数。这个过程一直进行到除数后面的数已全被挖掉为止。

上面的算法可表示为:

(1) 挖去1;

(2) 用刚才被挖去的数的下一个数p去除p后面各数,(3) 把p的倍(4) 数挖掉;

(5) 检查p是否小于√n的整数部分(如果n=1000,(6) 则检查p∠31?),(7)如果是则返回(2)继续执行,(8)否则

就结束;

(9) 之上盛夏的数就是素数。>>

问题三:结构化程序设计的工作原理是什么? 是进行以模块功能和处理过程设计为主的详细设计的基本原则。结构化程序设计是过程式程序设计的一个子集,它对写入的程序使用逻辑结构,使得理解和修改更有效更容易。

中文名:结构化程序设计

外文名:structured programming

提出人:EWDijikstra

时间:1965年

分享

概述

概念

其概念最早由EWDijikstra在1965年提出的,是软件发展的一个重要的里程碑。它的主要观点是采用自顶向下、逐步求精及模块化的程序设计方法;使用三种基本控制结构构造程序,任何程序都可由顺序、选择、循环三种基本控制结构构造。结构化程序设计主要强调的是程序的易读性。

内容

详细描述处理过程常用三种工具:图形、表格和语言。

图形:程序流程图、N-S图、PAD图 表格:判定表

语言:过程设计语言(PDL)

结构化程序设计曾被称为软件发展中的第三个里程碑。该方法的要点是:

(1) 主张使用顺序、选择、循环三种基本结构来嵌套连结成具有复杂层次的“结构化程序”,严格控制GOTO语句的使用。用这样的方法编出的程序在结构上具有以下效果:

a 以控制结构为单位,只有一个入口,一个出口,所以能独立地理解这一部分。

b 能够以控制结构为单位,从上到下顺序地阅读程序文本。

c由于程序的静态描述与执行时的控制流程容易对应,所以能够方便正确地理解程序的动作。

(2)“自顶而下,逐步求精”的设计思想,其出发点是从问题的总体目标开始,抽象低层的细节,先专心构造高层的结构,然后再一层一层地分解和细化。这使设计者能把握主题,高屋建瓴,避免一开始就陷入复杂的细节中,使复杂的设计过程变得简单明了,过程的结果也容易做到正确可靠。

(3)“独立功能,单出、入口”的模块结构,减少模块的相互联系使模块可作为插件或积木使用,降低程序的复杂性,提高可靠性。程序编写时,所有模块的功能通过相应的子程序(函数或过程)的代码来实现。程序的主体是子程序层次库,它与功能模块的抽象层次相对应,编码原则使得程序流程简洁、清晰,增强可读性。

(4) 主程序员组。

其中(1)、(2)是解决程序结构规范化问题;(3)是解决将大划小,将难化简的求解方法问题;(4)是解决软件开发的人员组织结构问题。

模型

结构化程序设计通常使用自上往下的设计模型,开发员将整个程序结构映射到单个小部分。已定义的函数或相似函数的 在单个模块或字模块中编码,这意味着,代码能够更有效的载入存储器,模块能在其它程序中再利用。模块单独测试之后,与其它模块整合起来形成整个程序组织。

程序流程遵循简单的层次化模型,采用“for”、“repeat”、“while”等循环结构,鼓励使用“Go To”语句。几乎任何语言都能使用结构化程序设计技术来避免非结构化语言的通常陷阱。非结构化程序设计必须依赖于开发人员避免结构问题,从而导致程序组织较差。大多数现代过程式语言都鼓励结构化程序设计。

基本结构

结构化程序设计的三种基本结构是:顺序结构、选择结构和循环结构。

顺序结构

顺序结构表示程序中的各 *** 作是按照它们出现的先后顺序执行的。

选择结构

选择结构表示程序的处理步骤出现了分支,它需要根据某一特定的条件选择其中的一个分支执行。选择结构有单选择、双选择和多选择三种形式。

循环结构

循环结构表示程序反复执行某个或某些 *** 作,直到某条件为假(或为真)时才可终止循环。在循环结构中最主要的是:什么情况下执行循环?哪些 *** 作需要循环执行?循环结构的基本形式有两种:当型循环和直到型循环。

当型循环:表示先判断条件,当满足给定的>>

问题四:结构化程序设计的三种基本结构是什么。各有什么特点 顺序结构、分支结构、循环结构

顺序结构就是从头到尾一次执行每一个语句

分支结构根据不同的条件执行不同的语句或者语句体

循环结构就是重复的执行语句或者语句体,达到重复执行一类 *** 作的目的

问题五:什么是结构化程序设计 结构化程序设计(structured programming)是进行以模块功能和处理过程设计为主的详细设计的基本原则。结构化程序设计是过程式程序设计的一个子集,它对写入的程序使用逻辑结构,使得理解和修改更有效更容易。结构化程序设计的三种基本结构是:顺序结构、选择结构和循环结构。结构化程序设计曾被称为软件发展中的第三个里程碑。结构化程序设计通常使用自上往下的设计模型,开发员将整个程序结构映射到单个小部分。当型循环:表示先判断条件,当满足给定的条件时执行循环体,并且在循环终端处流程自动返回到循环入口;如果条件不满足,则退出循环体直接到达流程出口处。

问题六:结构化程序设计原则 1.自顶向下:程序设计时,应先考虑总体,后考虑细节;先考虑全局目标,后考虑局部目标。不要一开始就过多追求众多的细节,先从最上层总目标开始设计,逐步使问题具体化。 2.逐步求精:对复杂问题,应设计一些子目标作为过渡,逐步细化。 3.模块化:一个复杂问题,肯定是由若干稍简单的问题构成。模块化是把程序要解决的总目标分解为子目标,再进一步分解为具体的小目标,把每一个小目标称为一个模块。 4.限制使用goto语句

问题七:结构化程序设计的目的构成与方法 结构化程序设计的目的:通过设计结构良好的程序,以程序静态的良好的结构保证程序动态执行的正确性,使程序易理解、易调试、易维护,以提高软件开发的效率,减少出错率。构成:控制结构+数据结构,控制结构有顺序、选择、循环结构。方法:模块丁,自顶向下,自底向上。

问题八:结构化与非结构化程序的区别? 结构化就是把整体分布,把每部分都解决

问题九:什么叫结构化程序设计?它的主要内容是什么? 结构化程序设计的思路是:自顶向下、逐步求精;其程序结构是按功能划分为若干个基本模块;各模块之间的关系尽可能简单,在功能上相对独立;每一模块内部均是由顺序、选择和循环三种基本结构组成;其模块化实现的具体方法是使用子程序。结构化程序设计由于采用了模块分解与功能抽象,自顶向下、分而治之的方法,从而有效地将一个较复杂的程序系统设计任务分解成许多易于控制和处理的子任务,便于开发和维护。

虽然结构化程序设计方法具有很多的优点,但它仍是一种面向过程的程序设计方法,它把数据和处理数据的过程分离为相互独立的实体。当数据结构改变时,所有相关的处理过程都要进行相应的修改,每一种相对于老问题的新方法都要带来额外的开销,程序的可重用性差。

由于图形用户界面的应用,程序运行由顺序运行演变为事件驱动,使得软件使用起来越来越方便,但开发起来却越来越困难,对这种软件的功能很难用过程来描述和实现,使处面向过程的方法来开发和维护都将非常困难

问题十:什么是结构化程序设计方法? 一个结构化程序就是用高级语言表示的结构化算法。用三种基本结构组成的程序必然是结构化的程序,这种程序便于编写、阅读、

修改和维护。这就减少了程序出错的机会,提高了程序的可靠性,保证了程序的质量。

结构化程序设计强调程序设计风格和程序结构的规范化,提倡清晰的结构。怎样才能得到一个结构化的程序呢如果我们面临一

个复杂的问题,是难以一下子写出一个层次分明、结构清晰、算法正确的程序的。结构化程序设计方法的基本思路是,把一个复

杂问题的求解过程分阶段进行,每个阶段处理的问题都控制在人们容易理解和处理的范围内。

具体说,采取以下方法保证得到结构化的程序。

(1)自顶向下;(2)逐步细化;(3)模块化设计;(4)结构化编码。

在接受一个任务后应怎样着手进行呢有两种不同的方法:一种是白顶向下,逐步细化;―种是自下而上,逐步积累。以写文章为

例来说明这个问题。有的人胸有全局,先没想好整个文章分成哪几个部分,然后再进一步考虑每一部分分成哪几节,每一节分成哪

几段,每一段应包含什么内容,用这种方法逐步分解,直到作者认为可以直接将各小段表达为文字语句为止。这种方法就叫做

“自顶向下,逐步细化”。

另有些人写文章时不拟提纲,如同写信一样提起笔就写,想到哪里就写到哪里,直到他认为把想写的内容都写出来了为止。

这种方法叫做“自下而上,逐步积累”。

显然,用第一种方法考虑周全,结构清晰,层次分明,作者容易写,读者容易看。如果发现某一部分中有一段内容不妥,需要修改

只需找出该部分,修改有关段落即可,与其他部分无关。我们提倡用这种方法设计程序。这就是用工程的方法设计程序。

我们应当掌握自顶向下、逐步细化的设计方法。这种设计方法的过程是将问题求解由抽象逐步具体化的过程。

用这种方法便于验证算法的正确性,在向下一层展开之前应仔细检查本层设计是否正确,只有上一层是正确的才能向下细化。

如果每一层设计都没有问题,则整个算法就 正确的。由于每一层向下细化时都不太复杂,因此容易保证整个算法的正确性检查

时也是由上而下逐层检查,这样做,思路清楚,有条不紊地一步一步进行,既严谨又方便。

举一个例子来说明这种方法的应用。

例 将1到1000之间的素数打印出来。

我们已在本章中讨论过判别素数的方法,现在采用“筛法”来求素数表。所谓“筛法”指的是“埃拉托色尼(Eratosthenes)筛法”

他是古希腊的著名数学家。他采取的方法是,在一张纸上写上1到1000全部整数,然后逐个判断它们是否素数,找出一个非素数,就

把它 挖掉,最后剩下的就是素数

具体作法如下:

(1) 先将1挖掉(因为1不(2) 是素数)。

(3) 用2去除它后面的各个数,(4) 把能被2整除的数挖掉,(5) 即把2 的倍(6) 数挖掉。

(7) 用3去除它后面各数,(8) 把3的倍(9) 数挖掉

(10) 分别用4、5…各数作为除数去除这些数以后个各数。这个过程一直进行到除数后面的数已全被挖掉为止。

上面的算法可表示为:

(1) 挖去1;

(2) 用刚才被挖去的数的下一个数p去除p后面各数,(3) 把p的倍(4) 数挖掉;

(5) 检查p是否小于√n的整数部分(如果n=1000,(6) 则检查p∠31?),(7)如果是则返回(2)继续执行,(8)否则

就结束;

(9) 之上盛夏的数就是素数。>>

任何复杂的算法,都可以由顺序结构、选择(分支)结构和循环结构三种基本结构组成。在构造算法时,也仅以这三种结构作为基本单元,同时规定基本结构之间可以并列和互相包含,不允许交叉和从一个结构直接转到另一个结构的内部去。结构清晰,易于正确性验证和纠正程序中的错误,这种方法就是结构化方法,遵循这种方法的程序设计,就是结构化程序设计。遵循这种结构的程序只有一个输入口和一个输出口。

结构化程序的概念首先是从以往编程过程中无限制地使用转移语句而提出的。转移语句可以使程序的控制流程强制性的转向程序的任一处,在传统流程图中,用"很随意"的流程线来描述转移功能。如果一个程序中多处出现这种转移情况,将会导致程序流程无序可寻,程序结构杂乱无章,这样的程序是令人难以理解和接受的,并且容易出错。尤其是在实际软件产品的开发中,更多的追求软件的可读性和可修改性,象这种结构和风格的程序是不允许出现的。为此提出了程序的三种基本结构。

在讨论算法时我们列举了程序的顺序、选择和循环三种控制流程,这就是结构化程序设计方法强调使用的三种基本结构。算法的实现过程是由一系列 *** 作组成的,这些 *** 作之间的执行次序就是程序的控制结构。1996年,计算机科学家Bohm和Jacopini证明了这样的事实:任何简单或复杂的算法都可以由顺序结构、选择结构和循环结构这三种基本结构组合而成。所以,这三种结构就被称为程序设计的三种基本结构。也是结构化程序设计必须采用的结构。

结构化程序中的任意基本结构都具有唯一入口和唯一出口,并且程序不会出现死循环。在程序的静态形式与动态执行流程之间具有良好的对应关系。

结构化程序设计的基本思想是采用"自顶向下,逐步求精"的程序设计方法和"单入口单出口"的控制结构。自顶向下、逐步求精的程序设计方法从问题本身开始,经过逐步细化,将解决问题的步骤分解为由基本程序结构模块组成的结构化程序框图;"单入口单出口"的思想认为一个复杂的程序,如果它仅是由顺序、选择和循环三种基本程序结构通过组合、嵌套构成,那么这个新构造的程序一定是一个单入口单出口的程序。据此就很容易编写出结构良好、易于调试的程序来。

面向对象的程序设计特点

1编程模型

所有计算机均由两种元素组成:代码和数据精确的说,有些程序是围绕着"什么正在发生"而编写,有些则是围绕"谁正在受影响"而编写的

第一种编程方式叫做"面向过程的模型",按这种模型编写的程序以一系列的线性步骤(代码)为特征,可被理解为作用于数据的代码如 C 等过程化语言

第二种编程方式叫做"面向对象的模型",按这种模型编写的程序围绕着程序的数据(对象)和针对该对象而严格定义的接口来组织程序,它的特点是数据控制代码的访问通过把控制权转移到数据上,面向对象的模型在组织方式上有:抽象,封装,继承和多态的好处

2抽象

面向对象程序设计的基本要素是抽象,程序员通过抽象来管理复杂性

管理抽象的有效方法是使用层次式的分类特性,这种方法允许用户根据物理含义分解一个复杂的系统,把它划分成更容易管理的块例如,一个计算机系统是一个独立的对象而在计算机系统内部由几个子系统组成:显示器,键盘,硬盘驱动器,DVD-ROM,软盘,音响等,这些子系统每个又由专门的部件组成关键是需要使用层次抽象来管理计算机系统(或其他任何复杂系统)的复杂性

面向对象程序设计的本质:这些抽象的对象可以被看作具体的实体,这些实体对用来告诉我们作什么的消息进行响应

/ (我的理解)

计算机是一个实体,我要输入字符,显示器显示出来,那么

计算机(对象)输入(键盘属性)显示(显示方法)

使用分层来引用, *** 作而不用管计算机内部如何处理

只要有计算机对象,它就能响应我的 *** 作,而我敲键盘,

计算机对象就把这个消息传给屏幕,屏幕显示

/

计算机对象包含了它所有的属性,以及 *** 作,这就是面向对象程序设计的三大原则之一:封装

3封装

封装是一种把代码和代码所 *** 作的数据捆绑在一起,使这两者不受外界干扰和误用的机制封装可被理解为一种用做保护的包装器,以防止代码和数据被包装器外部所定义的其他代码任意访问对包装器内部代码与数据的访问通过一个明确定义的接口来控制封装代码的好处是每个人都知道怎样访问代码,进而无需考虑实现细节就能直接使用它,同时不用担心不可预料的副作用

在JAVA中,最基本的封装单元是类,一个类定义着将由一组对象所共享的行为(数据和代码)一个类的每个对象均包含它所定义的结构与行为,这些对象就好象是一个模子铸造出来的所以对象也叫做类的实例

在定义一个类时,需要指定构成该类的代码与数据特别是,类所定义的对象叫做成员变量或实例变量 *** 作数据的代码叫做成员方法方法定义怎样使用成员变量,这意味着类的行为和接口要由 *** 作实例数据的方法来定义

由于类的用途是封装复杂性,所以类的内部有隐藏实现复杂性的机制所以JAVA中提供了私有和公有的访问模式,类的公有接口代表外部的用户应该知道或可以知道的每件东西私有的方法数据只能通过该类的成员代码来访问这就可以确保不会发生不希望的事情

4继承

继承是指一个对象从另一个对象中获得属性的过程是面向对象程序设计的三大原则之二,它支持按层次分类的概念例如,波斯猫是猫的一种,猫又是哺乳动物的一种,哺乳动物又是动物的一种如果不使用层次的概念,每个对象需要明确定义各自的全部特征通过层次分类方式,一个对象只需要在它的类中定义是它成为唯一的 各个属性,然后从父类中继承它的通用属性因此,正是由于继承机制,才使得一个对象可以成为一个通用类的一个特定实例一个深度继承的子类将继承它在类层次中的每个祖先的所有属性

继承与封装可以互相作用如果一个给定的类封装了某些属性,它的任何子类将会含有同样得属性,另加各个子类所有得属性这是面向对象程序在复杂性上呈线性而非几何增长的一个重要概念新的子类继承其所有祖先的所有属性子类和系统中的其他代码不会产生无法预料的交互作用

5多态

多态是指一个方法只能有一个名称,但可以有许多形态,也就是程序中可以定义多个同名的方法,用"一个接口,多个方法"来描述可以通过方法的参数和类型引用

6封装,继承,多态的组合使用

在由封装,继承,多态所组成的环境中,程序员可以编写出比面向过程模型更健壮,更具扩展性的程序经过仔细设计的类层次结构是重用代码的基础封装能让程序员不必修改公有接口的代码即可实现程序的移植多态能使程序员开发出简洁,易懂,易修改的代码例如:汽车

从继承的角度看,驾驶员都依靠继承性来驾驶不同类型(子类)的汽车,无论这辆车是轿车还是卡车,是奔驰牌还是菲亚特牌,驾驶员都能找到方向盘,手刹,换档器经过一段时间驾驶后,都能知道手动档与自动档之间的差别,因为他们实际上都知道这两者的共同超类:传动装置

从封装的角度看,驾驶员总是看到封装好的特性刹车隐藏了许多复杂性,其外观如此简单,用脚就能 *** 作它发动机,手刹,轮胎大小的实现对与刹车类的定义没有影响

从多态的角度看,刹车系统有正锁反锁之分,驾驶员只用脚踩刹车停车,同样的接口可以用来控制若干种不同的实现(正锁或反锁)

这样各个独立的构件才被转换为汽车这个对象的同样,通过使用面向对象的设计原则,程序员可以把一个复杂程序的各个构件组合在一起,形成一个一致,健壮,可维护的程序

以上就是关于怎么理解面向对象程序设计全部的内容,包括:怎么理解面向对象程序设计、什么叫结构化程序设计、C语言中结构化的程序设计是什么等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/10624673.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-10
下一篇 2023-05-10

发表评论

登录后才能评论

评论列表(0条)

保存