当前位置:文档之家› JAVA语言面向对象程序设计的特点

JAVA语言面向对象程序设计的特点

JAVA语言面向对象程序设计的特点马鲁宁
(西宁市第一职业技术学校,青海西宁810012)
摘要:论述了JAVA语言中出现的面向对象设计的
概念和特点。关键词:面向对象;对象;类;继承;多态
1概述随着计算机应用的不断深入,计算机应用软件的规范和复杂性日益增大,社会对软件质量和数量的要求越来越强烈。怎样经济、高效地开发出高质量的软件产品,一直是软件工程界致力于解决的核心问题。由于采用传统的结构式程序设计方法编制的软件很难经受现代软件所要求的“功能变换”和“更大可靠性”的冲击,从而在80年代产生了一种革命性的程序设计方法———面向对象的程序设计方法。面向对象程序设计吸取了传统的结构式程序设计的先进思想,并把它们同几个支持用户,用新方法进行程序设计的有力的概念结合起来,从而开创了程序设计的新天地。面向对象程序设计的主要特点是以对象作为基本的逻辑构件,用类来描述具有相同特征的对象,整体地代表这类对象,以继承性作为共享机制,共享类中的方法和属性,对象之间则以消息传递的方式进行通讯。与传统的程序设计开发人员不再是仅仅根据某种程序设计语言的语句和表达式来编制程序,而是要求软件开发者通过装配其他编制者提供的可重用的“软件体”来生产软件。面向对象的程序设计最为显著的特点是封装性、继承性、多态性。2对象、类及封装性面向对象程序设计最重要的特征就是对象。对象通常由状态参数及操作过程二部分组成,其中状态参数描述了该对象的内部结构,操作过程描述其具有的行为。一个典型的对象可以描述为:ClassPOfloath,w;QClassAOpublicstaticvoidmain(Stringargs[])OPli;//声明对象Li=newP();//为对象分配内存,使用new和默认构造方法QQ在一个对象里,一些状态或操作可以是该对象专有的,任何外部事物都无权存取。因为对象提供了对操作和状态的有效保护,以防止程序的无关部分偶然修改或错误使用对象专有部分。这种操作过程和状态的连接通常称为封装性。对象的工作是靠消息来激发的一个对象可以接受消息,也可以发送。所谓消息就是请求对象执行某一处理或回答某一信息的要求,对象之间的联系只能通过消息来进行,对象采取什么动作决定于接收到的消息所提出的请求。当对象认识消息则接收,否则予以拒绝,这样对象之间的交互作用得以控制,从而有效地减少偶然性副作用的可能性。类是一组客观对象的抽象

,类封装了一类对象的属性和方法,类是用来定义对象的摸板。因此,类代表了一组对象,体现了一组对象的共同特征。从一组对象中抽出它们的共同状态和操作,并把它们归并为一个类,是面向对象程序设计的主要能力。3继承性继承性是面向对象程序设计的主要特征之一,是一种由已有的类创建新类的机制,先创建一个共有属性的一般类,根据该一般类再创建具有特殊性质的新类。新类继承一般类的属性和方法,并根据需要增加自己的新的属性和方法。继承性主要体现在两个方面:状态继承;操作继承。状态继承实质上体现了子类对父类状态的访问权限的限制,而操作继承则是寓于类的操作之中,所以在继承的层次中,主要是子类要继承父类中所定义的操作的过程。关于继承性,不同的实现具有不同的处理策略,下面我们说明JAVA中的实现策略:3.1Public(公有变量和公有方法)当一个状态或操作过程被说明为Public时,类对象可以直接对它们进行访问、操作和调用,并可以被子类继承。3.2Protected(私有的变量和私有的方法)当一个状态或操作过程被说明为Protected时,任何对象都不可以直接对它们进行访问、操作和调用,但可以被子类继承。3.3Private(保护的变量和方法)当一个状态或操作过程被说明为Private时,任何一个对象都不可以直接对它们进行访问、操作和调用,并不能被子类继承。4多态性所谓多态性就是指用一个名字说明某一类的一般操作,然而基于所要处理的数据类型;将按某一特定的情况进行处理。简而言之,就是一个接口,多种实现;本质上就是把一个接口用于一类活动,而具体活动的选择则由涉及的类型确定。多态一般分为四种不同的形式:参数多态U包含多态U过载多态U强制多态。参数多态和包含多态通常称为通用多态,过载多态和强制多态称为特定多态。多态发生必须有特定的环境:如:有直接或间接继承关系的两个类,子类重写父类的方法;实际类型为子类的对象,被当成父类来使用,调用重写方法。多态是建立在继承的基础上的,没有继承,就不会有多态。继承的目的:一是为了继承程序代码,达到程序代码的复用;二是为了继承接口,达到接口的复用。多态依赖于借口的继承。下面我们以JAVA为例来说明多态性的实现:函数重载(参数多态)在JAVA中,如果几个函数的参数表不同,就可以为这几个函数赋予同一个函数名,使得函数能够完成不同的功能。下面的程序段重载了求绝对值运算的函数abs()。i

ntabs(intx);//求整型数绝对值Oreturn(X>0)?X:-X;QClassderived:publicbaseO//子类定义intk;public:derived(intx)Ok=x:Qvoidshowk()Ocout<<k<<;QQ5结束语面向对象程序设计是程序设计的一种新范型。程序设计范型是人们在程序设计时所采用的基本方式模型,一个程序设计范型是一类程序设计语言的基础,是执行设施的基本集合,体现了一类计算机程序设计语言的特点,这些特点能用以支持应用领域所希望的设计风格。面向对象的程序设计是在用传统程序设计))

相关主题
文本预览
相关文档 最新文档