苏州Java软件开发培训机构
Java语言是纯粹的面对对象设计语言,支持面对对象三大基本特征:继承、封装和多态,以对象为中心,整个java程序是由一个个的类组成的,所以,类是java程序中**小的单位。面对对象的方式由面对对象的分析、设计和编程组成(OOA\OOD\OOP),其中分析和设计采用UML(统一建模语言)来描述和记录,常用UML图形包括例图、类图、组件图、部署图、顺序图、活动图以及状态机图。
目前软件开发主要用到结构化开发方法(面对功能或者说面对过程)以及面对对象开发方法。结构化开发比如C、Basic、Pascal等语言,因面对对象具有出色的重用性、拓展性、维护性,于是催生了大量的面对对象语言例如C 、Java、C#和Ruby等。
结构化设计方法讲求自上而下、逐步求精、模块化等原则,按照功能来分析系统需求。结构化开发中**小的程序单位为函数,每一个函数负责一个功能,用以接收一些输入数据,函数对输入数据进行处理后输出一些数据,所以整个系统由一个个函数组成,其中作为程序入口的函数称为主函数,由主函数依次调用普通函数从而完成一整个系统的功能,每一个函数都是可输入输出的子系统,输入数据包括函数形参、全局变量和常量等,输出数据包括函数返回值和传出参数等。以此,可看出结构化开发方法具有两个局限性,其一,设计不够直观,需要开发者将客观世界分解成一个个功能,不符合人的习惯性思维;其二,可拓展性不强,如果用户需求或者实现方式发生改变,因结构化开发方法是自上而下的方式,所以需要从上至下重新开发导致维护成本高。
面对对象则是一种更优秀的开发设计方法,它的基本思想是使用类、对象、继承、封装、消息等基本概念进行程序开发设计。所以综上所述,面对对象和面对过程的区别在于一个博大,一个精深,面对对象相对简单,将构成问题事物分解成对象,建立对象(类)的目的不是为了细化完成每一个步骤,而是为了叙述某个事物在整个问题中的行为;而面向过程即结构化设计是分析出解决问题的步骤,**依次调用一个个函数(相当于方法)把这些步骤一步一步实现。其实不管是面对对象还是面对过程,都体现了一种软件重用的思想,只不过面对对象重用的是类,一种将数据和处理数据的过程及函数封装在一起的实体,面对对象一个很大的好处就是数据和方法的封装,使得面对对象的三大特性得到发挥。**后说一句就是任何程序设计方法都可以由顺序结构、选择结构、循环结构三大基本结构组合而成。
下面细说面对对象的三大基本特征:继承、封装和多态。其中封装指的是将对象的实现细节隐藏起来,然后**一些公用方法来暴露该对象的功能;继承是面对对象实现软件复用的重要手段,当子类继承父类后,直接获得父类的属性和方法;多态指的是子类对象可以直接赋给父类变量,但运行时依然表现出子类的行为特征,这意味着同一个类型的对象执行同一个方法时,可能表现出多种行为特征。
面对对象还支持以下功能:
*对象是面对对象中**基本的概念,它的基本特征有:**标示性、分类性、多态性、封装性、模块独立性好。
*类是具有共同属性、共同方法的一类事物,类是对象的抽象,对象是类的实例。类的封装性提高了类的内聚性,降低对象之间的耦合性。
*对象间这种相互的合作需要一种机制协助进行,这种机制称为“消息”,消息是实例与实例之间相互通信的机制。
*在面对对象方法中,类之间共享属性和操作的机制称为继承。继承具有传递性。继承可分为单继承和多继承,因多继承可能引起继承结构的混乱,所以Java不支持多继承。
在编程语言领域,还有一个“基于对象”的概念,“基于对象”不能利用现有对象模板产生新对象,即它不具备“继承”的特性。判断语言是否面对对象,可以根据它们是否具有“继承”和“多态”这两个特性。
更多课程推荐: