面向对象程序设计有何特点?

来源:悟空问答 编辑: 张倩 手机版

1、Smalltalk Smalltalk被公认为历史上第二个面向对象的程序设计语言和第一个真正的集成开发环境 (IDE)。由Alan Kay,Dan Ingalls,Ted Kaehler,Adele Goldberg等于70年代初在Xerox PARC开发。 Smalltalk对其它众多的程序设计语言的产生起到了

面向对象程序设计有何特点?

由热心用户 用户1177299359975 提供的回答:

把数据和过程这两个逻辑上独立的实体组合在一个逻辑体(对象)中,对象与对象之间只能通过发送消息来进行联系。这样,使原来各种类型的数据和数据结构与起不同作用的过程之间,非常复杂的关系大为简化,从而使软件的设计效率↑,可靠性、可读性、

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

面向对象的基本概念 1、对象 2、对象的状态和行为 3、类 4、类的结构 5、消息和方法 面向对象的特征 1、唯一性 2、分类性 3、继承性 4、多态性 面向对象的要素 1、抽象 2、封装 3、共享性 4、强调对象结构而不是程序结构

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

面向对象的特点是:封装.多态.继承.其中多态有分为重载和重写.面向对象的编程思想更加接近现实的事物. 有这样几点好处: 1.是编程更加容易.因为面向对象更接近于现实.所以你可以从现实的东西出发.进行适当的抽象. 2.在软件工程上.面向对象可以使工

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

面向对象就是一种开发软件的方法,核心是对象. 1.什么是对象? 对象是一个在时间和空间上存在的事物。比如你电脑屏幕上显示的一个字符、一个人、一只狗、一个程序、一个int等等,他们都在时间上和空间上存在。 2.什么是类? 简单的说类是一组对

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

肚子咕咕叫即肠鸣。食物进入肠道,夹杂空气和水份,肠道不能完全分解且吸收营养和水份,肠道蠕动把食物从十二指肠到小肠直肠排出,空气没和食物完全混合,所以肠子会咕咕叫,并且老是有屁(空气排出)。这个样子肠道肯定是不健康,至少有慢性肠炎。因为急性肠炎大都两次稀便排出大量有害菌后,肠道有益菌会帮你恢复正常,一般也不必吃药打针消炎。如果大便不成形那是肯定要注意。经常干结那是大便肠道停留时间长,水份被肠道吸干了,拉稀那是肠道没能充分吸队食物里水份。稀和干交替,那不是肠道有息肉就是早期肠癌的症状。如果便里面有粘液包裹新鲜血液,那是肠癌必有的一个特症啊!亲们,肠癌是五大常见恶性癌之一,即使发现特别早,生存期也难

声明:本内容来自悟空问答,版权归悟空问答所有,本网旨在传播知识,不代表本网赞同以上意见,如有任何问题请与本网联系!

15万买个帕萨特,可以了。只要不是旧款,不是库存车就行。现在新款最低配帕萨特售价也要15万左右,还是裸车价。帕萨特作为大众旗下的旗舰中型车,中意之人不在少数。外观大气,乘坐舒适,配置丰富等优点,俘获了一大批车友的芳心。新款帕萨特又有不少改良,其优异性更强,买帕萨特,是个不错的选择。希望本次回答对你有所帮助,谢谢!

扩展阅读,根据您访问的内容系统为您准备了以下扩展内容,希望对您有帮助。

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

1、易维护

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

2、质量高

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

3、效率高

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

4、易扩展

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

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

面向对象的基本概念

(1)对象。

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

(2)对象的状态和行为。

对象具有状态,一个对象用数据值来描述它的状态。

对象还有操作,用于改变对象的状态,对象及其操作就是对象的行为。

对象实现了数据和操作的结合,使数据和操作封装于对象的统一体中

(3)类。

具有相同或相似性质的对象的抽象就是类。因此,对象的抽象是类,类的具体化就是对象,也可以说类的实例是对象。

类具有属性,它是对象的状态的抽象,用数据结构来描述类的属性。

类具有操作,它是对象的行为的抽象,用操作名和实现该操作的方法来描述。

(4)类的结构。

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

①一般——具体结构称为分类结构,也可以说是“或”关系,或者是“is a”关系。

②整体——部分结构称为组装结构,它们之间的关系是一种“与”关系,或者是“has a”关系。

(5)消息和方法。

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

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

面向对象的特征

(1)对象唯一性。

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

(2)分类性。

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

(3)继承性。

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

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

在类层次中,子类只继承一个父类的数据结构和方法,则称为单重继承。

在类层次中,子类继承了多个父类的数据结构和方法,则称为多重继承。

在软件开发中,类的继承性使所建立的软件具有开放性、可扩充性,这是信息组织与分类的行之有效的方法,它简化了对象、类的创建工作量,增加了代码的可重性。

采用继承性,提供了类的规范的等级结构。通过类的继承关系,使公共的特性能够共享,提高了软件的重用性。

(4)多态性(多形性)

多态性使指相同的操作或函数、过程可作用于多种类型的对象上并获得不同的结果。不同的对象,收到同一消息可以产生不同的结果,这种现象称为多态性。

多态性允许每个对象以适合自身的方式去响应共同的消息。

多态性增强了软件的灵活性和重用性。

三、面向对象的要素

(1)抽象。

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

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

(2)封装性(信息隐藏)。

封装性是保证软件部件具有优良的模块性的基础。

面向对象的类是封装良好的模块,类定义将其说明(用户可见的外部接口)与实现(用户不可见的内部实现)显式地分开,其内部实现按其具体定义的作用域提供保护。

对象是封装的最基本单位。封装防止了程序相互依赖性而带来的变动影响。面向对象的封装比传统语言的封装更为清晰、更为有力。

(3)共享性

面向对象技术在不同级别上促进了共享

同一类中的共享。同一类中的对象有着相同数据结构。这些对象之间是结构、行为特征的共享关系。

在同一应用*享。在同一应用的类层次结构中,存在继承关系的各相似子类中,存在数据结构和行为的继承,使各相似子类共享共同的结构和行为。使用继承来实现代码的共享,这也是面向对象的主要优点之一。

在不同应用*享。面向对象不仅允许在同一应用*享信息,而且为未来目标的可重用设计准备了条件。通过类库这种机制和结构来实现不同应用中的信息共享。

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

面向对象程序设计有何特点

1.编程模型

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

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

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

2.抽象

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

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

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

/* (我的理解)

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

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

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

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

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

*/

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

3.封装

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

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

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

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

4.继承

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

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

5.多态

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

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

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

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

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

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

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

[更多阅读]

  • 面向对象程序设计的优点是什么?
  • 面向对象程序设计的特点和优点
  • 面向对象程序设计有何特点
  • 面向对象程序设计的发展背景,核心思想是什么?
  • 面向对象程序设计中什么是类类有几种特性
  • 面向对象程序设计语言有哪些?
  • 面向对象程序设计的基本思想是什么?有何特点?
  • 面向对象程序设计的基本特征?
  • "面向对象程序设计语言主要有哪些技术特点
  • 面向对象程序设计的重要概念有哪些
  • 面向对象程序设计有何特点? 相关搜索
    最新推荐
    热门推荐