《面向对象程序设计教程》从面向对象软件开发的角度出发,以java语言为辅助工具,重点讲述面向对象程序设计的思想、方法、技术以及面向对象的编程原则,使读者能较全面地了解面向对象软件开发的方法和实现过程,更好地理解和掌握面向对象的程序设计。
《面向对象程序设计教程》分为9章,从面向对象软件开发概述讲起,包括面向对象的基本概念、统一建模语言uml部分内容、程序设计模式等,以帮助读者打下良好的面向对象程序设计基础;其次讲述了java语言编程的基础知识;然后以三层程序设计模式为主线,分别讲解问题域类、图形用户界面类、数据访问类的设计与实现以及它们之间如何交互共同完成系统功能,其中包括设计、实现面向对象的重要概念:封装、继承、多态和类之间的各种关系,数据库访问以及异常处理等;最后讲解基于web的应用开发。
《面向对象程序设计教程》的附录介绍java应用开发环境的建立、myeclipse(含tomcat)的安装和使用说明以及常用的面向对象程序设计的术语和词汇的解释。
《面向对象程序设计教程》可作为高等院校计算机相关专业及软件工程专业“面向对象程序设计”课程的教材,也可作为高校教师、软件开发人员和计算机科技人员的学习参考书。
随着计算机技术、信息技术行业的不断发展以及软件的广泛应用,面向对象的程序设计已经成为软件开发的主流程序设计方法,面向对象的软件开发也显现出前所未有的优势。
面向对象程序设计是一种程序设计范例,同时也是一种程序开发的方法。它将对象作为软件的基本单元,将数据和方法封装在对象中,以提高软件的重用性、灵活性和扩展性。面向对象程序设计问世以来,市面上出现了较多的相关书籍,但它们大多以讲述面向对象程序设计语言细节为主。学生学习后可能掌握了这个面向对象程序设计的语言,会使用这个语言的语句编写程序,但对面向对象的概念、思想、方法的应用还是不够清楚,面对实际问题写出来的软件可维护性差。因此不能说使用了面向对象的程序设计语言(如Java)编程,就实现了面向对象的软件开发。
笔者根据多年对面向对象软件开发的研究与实践以及教学经验和体会编写成此书,希望使读者对面向对象有一个较系统的认知,明确面向对象程序设计在软件开发中所处的地位,程序设计的依据是什么,什么是好的程序设计模式,面向对象程序设计的宗旨是什么,逐步建立和掌握使用面向对象认知世界的思想、方法来指导程序的实现,以提高认识问题和解决问题的能力。
全书共分9章,第1章面向对象软件开发概述,主要讲述面向对象的基本概念和特征,面向对象软件开发的基础知识和基本过程,以及程序设计模式。第2章Java基础知识,主要讲述Java语言的基础知识和基本编程技术。第3章Java的类及使用,主要讲述Java提供的常用类和包以及如何在程序中使用它们。第4~8章主要以三层程序设计模式(表示层、业务逻辑层、数据访问层)为主线,由浅入深地介绍各层中类的设计和实现,然后介绍它们之间如何交互共同完成应用系统的功能。其中贯穿如何实现面向对象的重要概念:封装、继承和多态。例如,第4章自定义类及使用,主要讲解如何设计一个问题域类(封装),如何定义使用问题域类,以及如何处理程序可能出现的异常情况,提高程序的健壮性。第5章继承与多态,主要讲解类的继承关系如何设计,继承和多态的实现机制以及它们的作用,介绍抽象类和接口的设计与实现。第6章类之间的关系及实现,主要讲解如何建立类之间的关系以及如何编程实现这些关系。第7章图形用户界面类,主要讲述图形用户界面类的设计和实现,包括界面布局、事件处理机制以及如何编写处理事件的方法、用户界面类与问题域类如何交互等。第8章数据持久化和数据访问的实现,主要讲述利用数据库实现数据持久,讲解数据访问类的设计和实现,以及数据访问类与问题域类如何交互等。第9章 Web应用系统的开发,主要讲述Web技术的基础知识,Web应用程序设计模式MVC,通过案例讲述Web应用系统的设计与实现。
本书实例丰富,解题思路清晰,步骤明确,解释详细,浅显易懂,便于读者理解和掌握面向对象的程序设计的方法和技术。
在本书出版之际,感谢华中科技大学软件学院领导和同事们的积极支持,叶倩参与了本书附录的编写,在此一并表示感谢。
由于时间关系,书中难免有误和不足之处,敬请广大读者批评指正。
编者
2012年6月
第1章 面向对象软件开发概述
1.1 面向对象及软件开发
1.2 面向对象的基本概念
1.3 uml简介
1.4 程序设计模式及风格
1.5 本章小结
练习题
第2章 java基石出矢口识
2.1 认识java
2.2 标识符、关键字和分隔符
2.3 变量和常量
2.4 数据类型及转换
2.5 运算符与表达式
2.6 控制流程语句
2.7 数组
2.8 本章小结
练习题
第3章 java的类及使用
3.1 java的程序包
3.2 字符串类string
3.3 动态数组类arraylist
3.4 日期类date、calendar与dateformat
3.5 其他几个常用的类
3.6 什么是良好的编程习惯
3.7 本章小结
练习题
第4章 自定义类(问题域类)
4.1 类的详细设计
4.2 类的定义
4.3 类的使用
4.4 静态变量和静态方法
4.5 方法的重载
4.6 异常及异常处理
4.7 本章小结
练习题
第5章 继承与多态
5.1 类的继承
5.2 抽象类与抽象方法
5.3 多态性
5.4 接口
5.5 本章小结
练习题
第6章 类之间的关系及实现
6.1 关联关系及实现
6.2 聚合关系及实现
6.3 依赖关系及实现
6.4 本章小结
练习题
第7章 图形用户界面
7.1 java的gui类及应用
7.2 用户界面事件的处理
7.3 自定义gui类
7.4 用户界面类与问题域类的交互
7.5 用户界面设计的原则
7.6 本章小结
练习题
第8章 数据持久化和数据访问的实现
8.1 数据持久化
8.2 文件及访问
8.3 数据库及sql
8.4 数据访问的实现
8.5 较复杂的数据库访问的实现
8.6 本章小结
练习题
第9章 web应用系统的开发
9.1 web基本知识
9.2 web应用系统结构
9.3 java servlet
9.4 jsp
9.5 web应用系统的设计模式与架构
9.6 web应用系统开发实例
9.7 本章小结
练习题 附录ajava application开发环境的建立
a.1 下载和安装myeclipse
a.2 使用myeclipse编写java程序
a.3 导人java class
a.4 导出java项目
a.5 调试(debug)java程序
附录bjava web应用开发环境的建立
b.1 建立web项目
b.2 创建、编辑、编译web应用文件
b.3 调试运行jsp文件
b.4 项目的发布
附录c常用术语或词汇表
参考文献