当前位置: 首页 > 编程语言 > Java > 正文

Java编程那些事儿57—面向对象基础

时间:2010-03-11 csdn 陈跃峰

第八章 面向对象

在程序中,最核心的是数据结构和算法,不同的程序需要根据需要设计不同的数据结构,然后依赖程序的功能以及数据结构设计对应的算法,这种设计方式是程序的底层设计,也就是解决具体的功能。

当程序项目复杂到一定程度时,就不仅要专注于底层的设计,更要对程序的结构进行设计,面向对象(Object-Oriented,简称OO)就是一种常见的程序结构设计方法。

面向对象思想的基础是将相关的数据和方法放在一起,组合成一种新的复合数据类型,然后使用新创建的复合数据类型作为项目的基础。

8.1 面向对象简介

前面介绍的有关Java语言的基础知识,只是程序的基础知识,而本章介绍的面向对象的相关知识,则是和设计有关的知识。

面向对象的设计方式采用的是从外到内的设计方式,先设计整个项目的结构,然后再根据关联关注内部的每个细节。再分解整个项目时,也是按照模块化进行分解的。就像要制造一辆汽车,面向对象的设计思路是这样的:首先汽车要生产发动机、变速箱等模块,然后再去考虑每个模块的具体实现。使用这种设计思路,把每个部分都模块化,便于将功能进行分解,可以开发更复杂的项目。

再将模块划分出来以后,然后就来设计每个具体的模块,再设计模块时,如果模块还很复杂,则可以继续进行分解。如果模块已经划分的足够细致了,那么就可以进行具体的设计了。

设计具体模块的方式是确定模块需要的核心数据的结构,以及该模块需要具备的功能,也就是本章一开始提到的数据结构和算法,使每个模块都成为一个独立的完整结构,可以向其它的模块提供对应的服务(功能)。

整个系统(项目)则通过模块之间的互相关联运转起来,而每个模块只需要开放一个接口给其它的模块即可。

上面提到的就是面向对象的设计方式,总结起来是两大部分:

l 模块划分

l 模块实现

在具体的面向对象编程(Object-Oriented Programm,简称OOP)中,划分出来的每个模块一般称为类(class),而模块内部的数据称为field,一般称为属性,模块内部的功能一般称为方法(method)。

按照面向对象的设计方式,在实际的项目开发过程中,面向对象技术一般分为3个部分:

l 面向对象分析(Object-Oriented Analysis,简称OOA)

该步骤按照面向对象的思考方式提取项目的需求信息,一般由系统分析员负责,本部分形成文档为《项目需求分析说明书》。

l 面向对象设计(Object-Oriented Design,简称OOD)

该步骤按照《项目需求分析说明书》进行模块划分,以及进行模块的概要设计,一般由高级程序员负责,本部分形成文档为《项目概要设计说明书》。

l 面向对象编程(Object-Oriented Programm,简称OOP)

该步骤按照《项目概要设计说明书》细化每个模块的结构,一般由程序员负责,本部分形成文档为《项目详细设计说明书》。

最后由编码员(Coder)按照《项目详细设计说明书》进行具体的编码。这个就是面向对象开发的标准过程的简单描述。

而实际的程序开发过程中,则更关注于OOP部分,也就是实际实现时的具体设计以及编码的问题。

面向对象技术除了这些设计方式以外,还有很多的概念和语法知识需要在编程时进行学习,下面以Java语言的语法为基础来介绍面向对象编程的内容。