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

面向对象程序设计的特点和优点

发布网友 发布时间:2022-04-25 22:46

我来回答

3个回答

热心网友 时间:2022-06-18 08:37

面向对象的基本概念

(1)对象。
对象是人们要进行研究的任何事物,从最简单的整数到复杂的飞机等均可看作对象,它不仅能表示具体的事物,还能表示抽象的规则、计划或事件。

(2)对象的状态和行为。
对象具有状态,一个对象用数据值来描述它的状态。
对象还有操作,用于改变对象的状态,对象及其操作就是对象的行为。
对象实现了数据和操作的结合,使数据和操作封装于对象的统一体中

(3)类。
具有相同或相似性质的对象的抽象就是类。因此,对象的抽象是类,类的具体化就是对象,也可以说类的实例是对象。
类具有属性,它是对象的状态的抽象,用数据结构来描述类的属性。
类具有操作,它是对象的行为的抽象,用操作名和实现该操作的方法来描述。

(4)类的结构。
在客观世界中有若干类,这些类之间有一定的结构关系。通常有两种主要的结构关系,即一般--具体结构关系,整体--部分结构关系。

①一般——具体结构称为分类结构,也可以说是“或”关系,或者是“is a”关系。
②整体——部分结构称为组装结构,它们之间的关系是一种“与”关系,或者是“has a”关系。

(5)消息和方法。
对象之间进行通信的结构叫做消息。在对象的操作中,当一个消息发送给某个对象时,消息包含接收对象去执行某种操作的信息。发送一条消息至少要包括说明接受消息的对象名、发送给该对象的消息名(即对象名、方法名)。一般还要对参数加以说明,参数可以是认识该消息的对象所知道的变量名,或者是所有对象都知道的全局变量名。

类中操作的实现过程叫做方法,一个方法有方法名、参数、方法体

面向对象的特征

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

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

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

继承性是面向对象程序设计语言不同于其它语言的最重要的特点,是其他语言所没有的。

在类层次中,子类只继承一个父类的数据结构和方法,则称为单重继承。
在类层次中,子类继承了多个父类的数据结构和方法,则称为多重继承。
在软件开发中,类的继承性使所建立的软件具有开放性、可扩充性,这是信息组织与分类的行之有效的方法,它简化了对象、类的创建工作量,增加了代码的可重性。
采用继承性,提供了类的规范的等级结构。通过类的继承关系,使公共的特性能够共享,提高了软件的重用性。

(4)多态性(多形性)
多态性使指相同的操作或函数、过程可作用于多种类型的对象上并获得不同的结果。不同的对象,收到同一消息可以产生不同的结果,这种现象称为多态性。
多态性允许每个对象以适合自身的方式去响应共同的消息。
多态性增强了软件的灵活性和重用性。

三、面向对象的要素

(1)抽象。
抽象是指强调实体的本质、内在的属性。在系统开发中,抽象指的是在决定如何实现对象之前的对象的意义和行为。使用抽象可以尽可能避免过早考虑一些细节。

类实现了对象的数据(即状态)和行为的抽象。

(2)封装性(信息隐藏)。
封装性是保证软件部件具有优良的模块性的基础。
面向对象的类是封装良好的模块,类定义将其说明(用户可见的外部接口)与实现(用户不可见的内部实现)显式地分开,其内部实现按其具体定义的作用域提供保护。
对象是封装的最基本单位。封装防止了程序相互依赖性而带来的变动影响。面向对象的封装比传统语言的封装更为清晰、更为有力。

(3)共享性
面向对象技术在不同级别上促进了共享
同一类中的共享。同一类中的对象有着相同数据结构。这些对象之间是结构、行为特征的共享关系。
在同一应用*享。在同一应用的类层次结构中,存在继承关系的各相似子类中,存在数据结构和行为的继承,使各相似子类共享共同的结构和行为。使用继承来实现代码的共享,这也是面向对象的主要优点之一。
在不同应用*享。面向对象不仅允许在同一应用*享信息,而且为未来目标的可重用设计准备了条件。通过类库这种机制和结构来实现不同应用中的信息共享。

4.强调对象结构而不是程序结构

热心网友 时间:2022-06-18 08:38

《管理系统中计算机应用》面向对象程序设计的基本思想是封装性和可扩展性

热心网友 时间:2022-06-18 08:38

你这是在考试撒,

学生时代的问题还真回答不了,

这些东西慢慢体会,
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
儿歌祖国妈妈我爱你是谁写的汇总28句 为什么有的人学几何很厉害数学却不行 一个人数学几何好,但是其他计算方面的都马马虎虎,那么说明这个人怎么... 数学几何好的人,就是一道几何题很快就能想出来的人是不很聪明?这能练... 固安尚城国际怎么样 驾驶员咨询服务营业执照经营范围怎么写 驾校属于什么经营范围 核桃粉保质期多长时间 亿生康宝筋骨冷敷凝胶只在国内销售吗? 清河镇概况 孩子12岁有厌学情绪,动不动就发脾气是心理问题吗 什么叫基于面向对象程序设计,什么叫面向对象程序设计? 12岁的孩子爱发脾气,我该怎么办 小孩脾气暴躁需要看心里科吗 黑枸杞怎么泡不出颜色? 小孩子性格内向然后脾气暴躁需要看心理医生吗 对面向对象程序设计方法及C++的理解? 如果请律师当事人需要向律师写委托书吗 黑枸杞泡水多少时间变色 关于面向对象的程序设计方法,下列说法正确的是? 儿子12岁脾气暴躁易怒怎么办 请律师好像是要写委托书? 买卖公司找律师要签委托书吗 什么是面向对象的程序设计思想 请问中学生易怒暴躁爱发脾气有必要看心理医生吗? 光绪元宝户部当二十文铜币到底值多少钱 请律师替自己打官司时,,是否都的填写授权委托书?授权委托书一式二份?没有给请律师的人对吗? 十二岁的孩子叛逆用看心里医生吗 请律师的委托书怎么写 面向对象程序设计的设计方法 孩子的心理有问题,要看心理医生吗? 在面向对象程序设计中 方法有什么作用 孩子正在叛逆期,不听话用不用看心里医生 面向对象程序设计语言中能不能单独编写方法?还是方法一定需要包含在类的内部? 情绪经常无法得到控制,是否需要去看心理医生呢? "面向对象程序设计"为什么叫面向对象?怎么解释,通俗易懂 你好 麻烦问下小孩子的夜游症,脾气暴躁需要去看心理医生嚒 青少年脾气暴躁需要看癔病吗 儿子十六岁叛逆期脾气大,厌学,需要心理医生吗 小孩需要看心理医生吗 求小学二年级散学典礼发言稿 百度的产品运营师是做什么的? 二年级小学生发言稿必须50字? 百度运营增值顾问具体的工作是什么?尽可能详细点? 家长会上作为学生代表发言 应注意什么和如何让家长放心 怎样处理山楂的砧木种子?都有哪些需要注意的问题? 运营工作是指什么的? 小学生发言稿如何写 小学二年级即将加入中国少年先锋队,要代表所有新入队的同学们做入队感想发言。希望得到大家帮助! 秋季开学典礼初二学生代表发言稿