《Java程序设计基础项目化教程/高职高专计算机任务驱动模式教材》将“学生信息管理系统”分为8个子项目,通过完成一个个的任务,介绍Java语言开发的核心技能。项目1介绍面向对象的基本概念及面向对象的基本思想;项目2介绍Java的运行原理及开发环境的搭建;项目3介绍了Java中的基本面向对象特征;项目4介绍了Java中面向对象的高级特性;项目5介绍了Java中的集合类;项目6介绍了Java的I/O机制;项目7重点讲述了JDBC技术;项目8讲述了Java的GUI编程。8个子项目各有侧重点,阐述面向对象及Java程序设计的某一方面的特性,同时又密切关联,按照软件开发流程,完成了学生信息管理系统的程序设计。本书理论与实践结合,让学生在实践中学习并验证理论。
本书适合作为应用型本科和高职高专计算机相关专业学生的教材,也可以作为软件开发工程师的参考书。
Java语言作为面向对象程序设计语言的代表语言,自从诞生之日起就以其面向对象、简单安全、跨平台的特性而迅猛发展,至今Java已经是应用最广泛的编程语言之一。本书是Java语言的入门级教材,适合于Java语言的初学者。
本书使用“学生信息管理系统”一个项目贯穿全书,采用项目化的教学方式,由面向对象入手,放弃面向过程到面向对象的过渡,项目的整体架构不求知识面面俱到,而讲究实用够用,突出实践能力,循序渐进地引导读者在项目开发实践中掌握相关技能。全书将“学生信息管理系统”分为8个子项目,通过完成一个个的任务,讲述了Java语言开发的核心技能。8个子项目分别介绍如下。
项目1——欢迎进入OOP世界: 本子项目主要完成学生信息管理系统的需求分析,在分析过程中介绍OOP的概念、特征、编程思想,还讲解了OOA、OOD、OOP的特征、思想与编程过程。
项目2——开启Java之门: 本子项目主要完成了学生信息管理系统开发平台的搭建,细致分析了Java的运行原理,对JVM、JDK、JRE等基本概念进行了介绍,设置了环境变量,完成了通过记事本与Eclipse开发Java程序的基本过程。
项目3——类和对象: 本子项目主要实现了学生类的抽象,介绍了Java基本的数据类型与运算符,详细讲解了对象与类的相关理论,实现了学生类的抽象,使用构造方法创建了学生对象。
项目4——DAO模式: 本子项目通过DAO模式对学生类与班级类进行了业务建模与对象创建,讲解了抽象类、接口的使用方法,介绍了分支结构的实现方法,阐述了工厂模式与DAO模式的原理与使用。
项目5——持有对象: 本子项目实现了对学生对象与班级对象的持有,主要讲解了Java中List、Set、Map等集合的使用方法,介绍了循环与跳转语句的实现方法,阐述了泛型思想及使用泛型的优点。
项目6——对象持久化——文件: 本子项目实现了对象的文件存储,介绍了持久化的概念,讲解了Java 输入/输出相关理论,并通过对象的序列化进行了对象流的存取。本子项目还介绍了Java中异常处理的相关理论。
项目7——对象持久化——数据库: 本子项目实现了对象的数据库存储,介绍了ORM的基本概念,讲解了MySQL关系数据库的使用方法,对JDBC理论及其编程进行了详细的讲解与说明。
项目8——开启多彩世界: 本子项目实现了学生信息管理系统图形界面的设计,主要讲解了Java GUI的实现,包括Swing的组件、布局管理器与事件处理的相关理论。
本教材具有以下几个特色。
1. 面向对象,深入浅出
本书将软件工程的思想融入其中,采用面向对象的方法进行程序的分析与设计,使用面向对象思想进行需求分析,使用面向对象思想设计程序,适时引入各种恰当的设计模式,用最浅显的语言将面向对象思想与Java语言讲述清楚,为读者将来向优秀软件工程师迈进奠定基础。
2. 项目驱动,层层递进
本书采用“学生信息管理系统”贯穿全书,将“学生信息管理系统”分成若干子项目,每个子项目又分成多个任务,在任务的实现过程中完成知识点的讲解,内容层层递进,使知识的讲解不再突兀,易于被学生接受。
3. 图文并茂,重点拓展
本书采用经典的“学生信息管理系统”作为开发案例,实用易懂,并配有详细的图表说明,通过图表更细致、形象、生动地展示知识的内容与操作的过程,图文并茂。对于系统中未涉及的重要知识点,本书采用知识拓展的形式,为学生形成知识体系并为今后的发展奠定基础。
4. 资源丰富,全面共享
本书配有PPT、Flash课件、程序源代码、配套视频供教师上课使用,并建有配套的学习网站为大家的学习提供支持。
本书的作者团队由经验丰富的一线骨干教师组成,教学经验丰富,而且参与了大量的Java项目的开发,实践经验丰富。在长期的Java教学中,将项目开发的经验融入教学中,总结出一套完善的、行之有效的教学方法,并将其融入本书中。济南职业学院的李兴福承担了本书的主要编写任务,参与本书编写的还有肖仁锋、刘洪海、王艳红等一线老师。
由于时间仓促,作者水平有限,书中难免有疏漏之处,敬请广大读者不吝指正。
编者
2014年6月
项目1欢迎进入OOP世界
任务1理解OOP的基本概念
1.1.1任务目标
1.1.2知识学习
1.1.3任务实施
1.1.4任务总结
任务2了解OOP的高级特性
1.2.1任务目标
1.2.2知识学习
1.2.3任务实施
1.2.4任务总结
任务3学生信息管理系统的需求分析
1.3.1任务目标
1.3.2知识学习
1.3.3任务实施
1.3.4任务总结
1.3.5补充拓展
项目2开启Java之门
任务1搭建运行环境
2.1.1任务目标
2.1.2知识学习
2.1.3任务实施
2.1.4任务总结
任务2设计一个简单程序
2.2.1任务目标
2.2.2知识学习
2.2.3任务实施
2.2.4任务总结
2.2.5补充拓展
任务3Eclipse的应用
2.3.1任务目标
2.3.2知识学习
2.3.3任务实施
2.3.4任务总结
2.3.5补充拓展
项目3类和对象
任务1实现学生类
3.1.1任务目标
3.1.2知识学习
3.1.3任务实施
3.1.4任务总结
3.1.5补充拓展
任务2创建对象
3.2.1任务目标
3.2.2知识学习
3.2.3任务实施
3.2.4任务总结
3.2.5补充拓展
任务3类的继承
3.3.1任务目标
3.3.2知识学习
3.3.3任务实施
3.3.4任务总结
3.3.5补充拓展
项目4DAO模式
任务1业务抽象
4.1.1任务目标
4.1.2知识学习
4.1.3任务实施
4.1.4任务总结
4.1.5补充拓展
任务2业务的简单实现
4.2.1任务目标
4.2.2知识学习
4.2.3任务实施
4.2.4任务总结
4.2.5补充拓展
任务3工厂实现
4.3.1任务目标
4.3.2知识学习
4.3.3任务实施
4.3.4任务总结
4.3.5补充拓展
项目5持有对象
任务1安全持有对象
5.1.1任务目标
5.1.2知识学习
5.1.3任务实施
5.1.4任务总结
5.1.5补充拓展
任务2集合存取
5.2.1任务目标
5.2.2知识学习
5.2.3任务实施
5.2.4任务总结
5.2.5补充拓展
项目6对象持久化——文件
任务1创建文件
6.1.1任务目标
6.1.2知识学习
6.1.3任务实施
6.1.4任务总结
任务2CRUD——字节流
6.2.1任务目标
6.2.2知识学习
6.2.3任务实施
6.2.4任务总结
6.2.5补充拓展
任务3CRUD——字符流
6.3.1任务目标
6.3.2知识学习
6.3.3任务实施
6.3.4任务总结
6.3.5补充拓展
任务4CRUD——对象流
6.4.1任务目标
6.4.2知识学习
6.4.3任务实施
6.4.4任务总结
6.4.5补充拓展
项目7对象持久化——数据库
任务1MySQL关系数据库
7.1.1任务目标
7.1.2知识学习
7.1.3任务实施
7.1.4任务总结
任务2JDBC
7.2.1任务目标
7.2.2知识学习
7.2.3任务实施
7.2.4任务总结
7.2.5补充拓展
任务3DML实现
7.3.1任务目标
7.3.2知识学习
7.3.3任务实施
7.3.4任务总结
7.3.5补充拓展
任务4DQL实现
7.4.1任务目标
7.4.2知识学习
7.4.3任务实施
7.4.4任务总结
7.4.5补充拓展
项目8开启多彩世界
任务1创建注册登录窗口
8.1.1任务目标
8.1.2知识学习
8.1.3任务实施
8.1.4任务总结
8.1.5补充拓展
任务2添加事件处理功能
8.2.1任务目标
8.2.2知识学习
8.2.3任务实施
8.2.4任务总结
8.2.5补充拓展
任务3实现用户权限管理
8.3.1任务目标
8.3.2知识学习
8.3.3任务实施
8.3.4任务总结
8.3.5补充拓展
任务4实现学生信息管理
8.4.1任务目标
8.4.2知识学习
8.4.3任务实施
8.4.4任务总结
8.4.5补充拓展
参考文献