![]()
内容推荐 Java是当今软件行业的主流语言,也是软件技术及相关专业学生必须掌握的编程工具。本书以“仿QQ聊天软件”项目为主线,遵循软件行业标准,按照软件项目开发的流程,全面介绍了面向对象编程思想和运用Java语言及Eclipse开发平台完成项目的过程。内容包括课程准备、面向对象编程初级、面向对象编程高级、图形用户界面和网络编程及相关技术共5篇17章,主要知识点有搭建开发环境、建立面向对象的编程思想、创建类和对象、使用程序包、实现接口、异常处理、图形用户界面及组件处理、流、多线程、网络通信和数据库编程技术。通过贯穿全书的“仿QQ聊天软件”项目分析与编程设计,让读者实现从理论到实际、从初学者到程序员的提升。 本书以通俗易懂的语言介绍了Java编程思想,运用大量的经典实例,从实用的角度讲解了Java面向对象编程思路和技术,运用项目驱动和案例教学,让读者轻松掌握Java软件开发过程,并提供全套案例和项目源程序。 本书适合有一定编程基础的读者使用,可作为高职院校、应用型本科及其他高等院校“Java程序设计”和“面向对象程序设计”课程的教材,也可作为编程类培训班的教材或参考资料。 目录 第一篇课 程 准 备 第1章 初识Java 1.1 Java语言的发展历史 1.1.1 Java的三种版本 1.1.2 Java的应用 1.2 Java语言的特点与Java虚拟机 1.2.1 Java语言的特点 1.2.2 Java虚拟机(JVM) 本章习题 第2章 搭建开发环境 2.1 软件的安装与配置 2.1.1 安装和设置JDK 2.1.2 Eclipse介绍 2.2 体验第一个Java程序 2.2.1 应用程序(Application) 2.2.2 应用程序的运行 2.2.3 小程序(Applet) 2.2.4 小程序的运行 本章习题 第3章 建立面向对象的编程思想 3.1 面向对象的思想 3.1.1 面向对象思想的基本概念 3.1.2 面向对象思想的基本特征 3.1.3 面向对象思想的基本要素 3.2 面向对象的编程方法 3.2.1 面向对象编程的基本步骤 3.2.2 主要概念解析 3.2.3 类的实现 本章习题 项目实战1分析“仿QQ聊天软件”项目 第二篇面向对象编程初级 第4章 创建类 4.1 定义类 4.1.1 声明类 4.1.2 修饰类 4.2 成员属性的声明 4.2.1 基本数据类型 4.2.2 类型转换 4.2.3 成员属性的声明 技能训练1创建类 本章习题 第5章 创建类的成员属性和方法 5.1 Java语言的基本组成 5.1.1 分隔符 5.1.2 关键字 5.2 运算符与表达式 5.2.1 算术运算符 5.2.2 关系运算符 5.2.3 逻辑运算符 5.2.4 赋值运算符 5.2.5 条件运算符 5.2.6 表达式 技能训练2创建类的成员属性 5.3 控制结构 5.3.1 分支语句 5.3.2 循环语句 5.3.3 Java编程规范 5.4 数组 5.4.1 一维数组 5.4.2 多维数组 5.5 成员方法的声明 5.5.1 方法的声明 5.5.2 方法的覆盖与重载 技能训练3创建类的成员方法 本章习题 第6章 创建对象 6.1 类的实例化及对象引用 6.1.1 类的实例化 6.1.2 对象的引用 6.1.3 方法的参数传递 6.1.4 对象的消失 6.2 构造方法 6.2.1 构造方法的定义 6.2.2 构造方法的重载 技能训练4创建对象 本章习题 第7章 使用程序包 7.1 Java系统包 7.1.1 Java类库结构 7.1.2 包的引用 7.2 建立自己的包 7.2.1 包的声明 7.2.2 包的应用 7.3 字符串的处理 7.3.1 字符串的生成 7.3.2 字符串的访问 7.3.3 String类的常用方法 7.4 JDK帮助系统 7.4.1 JDK帮助文档介绍 7.4.2 JDK帮助文档应用举例 技能训练5使用程序包 本章习题 项目实战2实现“仿QQ聊天软件”的类及包 第三篇面向对象编程高级 第8章 实现继承 8.1 定义继承 8.1.1 继承的概念 8.1.2 继承的声明 8.2 子类对父类的访问 8.2.1 调用父类中特定的构造方法 8.2.2 在子类中访问父类的成员 8.3 定义抽象类 8.3.1 什么叫抽象类 8.3.2 抽象类的声明 技能训练6实现继承 本章习题 第9章 实现接口 9.1 定义接口 9.1.1 什么叫接口 9.1.2 声明接口 9.2 接口的实现 9.2.1 实现一个接口 9.2.2 实现多个接口 9.2.3 应用接口 技能训练7实现接口 本章习题 第10章 实现多态 10.1 创建多态的条件 10.1.1 什么叫多态 10.1.2 多态的条件 10.2 实现多态的两种方法 10.2.1 子类向父类转型实现多态 10.2.2 实现类接口 技能训练8实现多态 本章习题 第11章 处理异常 11.1 异常的分类 11.1.1 异常的产生 11.1.2 Java定义的标准异常类 11.2 异常处理机制 11.2.1 异常处理的语句结构 11.2.2 Throwable类的常用方法 11.2.3 异常类的创建 11.3 异常的抛出 11.3.1 throw语句 11.3.2 throws语句 技能训练9处理异常 本章习题 项目实战3实现“仿QQ聊天软件”高级特性 第四篇图形用户界面 第12章 AWT和Swing支持的GUI编程 12.1 使用AWT框架创建GUI图形用户界面 12.1.1 AWT组件的层次结构 12.1.2 AWT GUI组件的类型 12.1.3 AWT容器组件 12.1.4 AWT基本组件 12.2 使用Swing框架创建GUI图形用户界面 12.2.1 Swing包的优势 12.2.2 Swing包的体系结构 12.2.3 Swing组件的层次结构 12.2.4 Swing包中的基本组件 12.3 布局管理器 12.3.1 FlowLayout流布局管理器 12.3.2 GridLayout网格布局管理器 12.3.3 BorderLayout边界布局管理器 12.3.4 其他布局管理器 技能训练10创建图形界面 本章习题 第13章 Java中的事件处理 13.1 交互与事件处理 13.1.1 事件处理中的基本概念 13.1.2 事件处理模型 13.1.3 事件类型 13.2 事件类与接口 13.2.1 事件监听器接口 13.2.2 事件处理流程 13.2.3 事件 序言 前言 期盼已久的第4版终于面世了。本书在继承第3版优 势和精华的基础上,将国家有关政策精神融入教材内容 ,将软件行业相关标准和规范渗透到项目开发过程,更 具高度和专业性,特色更为明显。本书自2005年7月第1 版诞生,到现在已经有17年了,承蒙全国各地同仁厚爱 ,被九十所高等院校选为教材或者教学参考用书,许多 老师和读者通过Email或者电话提出了宝贵的建议和 意见,并就业界动态、技术变化、内容组织、教学方法 、实训实践设计等方面与作者进行了深入的探讨,为再 版提供了目标和方向。在此,作者对长期支持和关心本 书的所有读者表示深深的感谢!软件技术的更新和版本 迭代升级是IT人永恒的话题,紧跟业界变化,融入最新 技术和行业规范,为软件企业培养优秀的程序员是本书 编者的使命。掌握业界主流编程语言和开发工具,能够 独立开发网络软件项目,是软件类专业学生梦寐以求的 事情。“以行业项目引导人、以经典案例启发人,以通 俗语言教诲人”是本书追求的目标。作者在软件研发岗 位任职多年,本书既是所积累经验的系统总结,更是技 术技能培养的完美升华。本书定位为培养Java程序员, 适合具有一定编程基础和数据库知识、步入软件开发之 路的入门者使用。本书以业界通用的Eclipse作为设计 平台,通过纯Java开发的“仿QQ聊天软件”项目主线, 从需求分析到功能实现,贯穿全部教学过程,让学习者 有兴趣、有目标、有挑战,实现从学生到程序员身份的 顺利过渡。本书按照企业承接一个软件项目的标准流程 ,从项目需求分析、搭建开发环境到最后编码实现,分 为5篇共17章。第一篇: 课程准备,包括前3章。第1章 是初识Java,第2章是搭建开发环境,第3章是建立面向 对象的编程思想。通过分析“仿QQ聊天软件”项目需求 及面向对象特性,初步建立面向对象思想,为后续学习 在环境上、思想上、项目上做好准备。第二篇: 面向 对象编程初级,包括第4~7章。第4章是创建类,第5章 是创建类的成员属性和方法,第6章是创建对象,第7章 是使用程序包。通过实现“仿QQ聊天软件”的类及包, 掌握类、对象、包技术相关知识在实际项目中的应用方 法。第三篇: 面向对象编程高级,包括第8~11章。第8 章是实现继承,第9章是实现接口,第10章是实现多态 ,第11章是处理异常。通过实现“仿QQ聊天软件”高级 特性,让读者掌握利用继承、接口、抽象类、多态、异 常处理相关知识在实际中提高程序的重用性、可维护性 、可扩展性、容错性的方法。第四篇: 图形用户界面 ,包括第12、13章。第12章是AWT和Swing支持的GUI编 程,第13章是Java中的事件处理。通过实现“仿QQ聊天 软件”图形界面,掌握图形用户界面及事件处理相关知 识在实际中的运用方法。第五篇: 网络编程及相关技 术,包括最后4章。第14章是实现流,第15章是实现多 线程,第16章是实现网络通信,第17章是实现数据库编 程。通过实现“仿QQ聊天软件”网络编程,掌握网络通 信及流处理、多线程、JDBC技术在实际项目中的综合运 用。与第3版相比,第4版主要有6方面的变化: 一是重 新设计了实践教学体系,将耳熟能详的“仿QQ聊天软件 ”项目贯通整个教材,操作界面和功能模块众所周知, 既有实用性,更具挑战性; 二是本书所有内容、技能 训练和项目实践全部更新为最新技术,紧密对接业界主 流平台; 三是所有技能训练全部对接各章教学内容, 学完理论即可马上通过实践巩固知识点; 四是所有项 目实践全部按照“仿QQ聊天软件”的项目分析,逐步实 现,渗透软件行业标准; 五是增加了课程思政内容, 将工匠精神、行业规范、名人典故等元素融入教材; 六是为难点内容录制了微课视频,突破瓶颈有保障。本 书的主要特色是: (1) 面向Java程序员职业岗位,从 “仿QQ聊天软件”需求分析入手,以项目开发为主线, 完全贯通教学内容。(2) 5个项目实战训练,17章内容 , 15个与章节对应的技能训练,完整的实践教学体系 ,从生手到高手不再是难事。(3) 每个知识点都设计了 典型例题,既能反映知识点,又具有很强的实用价值, 是模块设计的缩影。 (4) 每一章均安排了相应的技能 训练,每篇即一个模块,均设计了项目实战,实践环节 比例达到50%以上,理论和实践融会贯通。(5) 语言通 俗易懂,讲解深入浅出,让读者迅速上手,逐步建立编 程思想,最后提供程序代码,实现由知识到技能的突破 。本书所有的例题和源程序均在JDK 8、Eclipse 4.5 环境中运行通过,本书配套的教学资源,包括全部源程 序代码及相应素材、电子教案和习题参考答案,可以从 清华大学出版社网站(www.tup.com.cn)下载。本书第 一至三篇由长沙商贸旅游职业技术学院胡伏湘编写,第 四篇由长沙商贸旅游职业技术学院肖玉朝和长沙民政职 业技术学院雷军环编写,第五篇由长沙商贸旅游职业技 术学院张田和长沙民政职业技术学院雷军环编写,技能 训练和项目实践由长沙商贸旅游职业技术学院曾新洲和 长沙民政职业技术学院吴名星编写,技能训练和软件项 目 精彩页 第3章建立面向对象的编程思想 主要知识点 面向对象编程的基本思想; 面向对象编程的一般方法; 运用Java语言编写简单的应用程序。 学习目标 掌握面向对象编程的基本思想。 面向对象编程(Object Oriented Programming,OOP)是一套概念和想法,利用计算机程序来描述实际问题,也是一种更直观、效率更高的解决问题的方法,与面向过程的编程方法(如C语言)相对应。面向过程的程序设计方法从解决问题的每一个步骤入手,适合于解决比较小的简单问题。而面向对象的程序设计方法则按照现实世界的特点来管理复杂的事务,把它们抽象为对象(Object),把每个对象的状态和行为封装在一起,通过对消息的反应来完成一定的任务。 Java是面向对象的典型编程语言。面向对象编程方法主要解决两方面的问题。 程序代码的重复使用,提高共享程度,增加程序的开发速度。 降低维护负担,将具备独立性的代码封装起来,在修改部分程序代码时,不会影响程序的其他部分。 3.1面向对象的思想 从现实世界中客观存在的事物(即对象)出发来构造软件系统,并在系统构造中尽可能运用人类的自然思维方式,强调直接以问题域(现实世界)中的事物为中心来思考问题,认识问题,并根据这些事物的本质特点,把它们抽象地表示为系统中的对象,作为系统的基本构成单位(而不是用一些与现实世界中的事物不太相关,并且没有对应关系的其他概念来构造系统),可以使系统直接映射成问题域,保持问题域中事物及其相互关系的本来面貌。 3.1.1面向对象思想的基本概念 面向对象(Object Oriented)是当今软件开发的主流方法,其概念和应用已超越了程序设计和软件开发,扩展到很宽的范围。如数据库系统、交互式界面、应用结构、应用平台、分布式系统、网络管理结构、CAD技术、人工智能等领域。 面向对象程序设计语言必须有描述对象及其相互之间关系的语言成分。这些成分的关系是: 系统中一切皆为对象; 对象是属性及其操作的封装体; 对象可按其性质划分为类,对象为类的实例; 实例关系和继承关系是对象之间的静态关系; 消息传递是对象之间动态联系的唯一形式,也是计算的唯一形式; 方法是消息的序列。主要概念包括: (1) 对象: 对象是人们要进行研究的任何事物,从最简单的整数到复杂的飞机等均可看作对象,它不仅能表示具体的事物,还能表示抽象的规则、计划或事件。 (2) 对象的状态和行为: 对象具有状态,一个对象用数据值来描述它的状态。对象还有操作,用于改变对象的状态,操作就是对象的行为。对象实现了数据和操作的结合,使数据和操作封装于对象的统一体中。 (3) 类: 具有相同或相似性质的对象的抽象就是类。因此,对象的抽象是类,类的具体化就是对象,也可以说类的实例是对象。类具有属性,是对象状态的抽象化,用数据结构来描述类的属性。类是对象行为的抽象化,用操作名和实现该操作的方法来描述。 (4) 类的结构: 在客观世界中有若干类,这些类之间有一定的结构关系。通常有两种主要的结构关系,即一般与具体、整体与部分的结构关系。一般与具体结构称为分类结构,也可以说是“或”关系,或者是“is a”关系。整体与部分结构称为组装结构,它们之间的关系是一种“与”关系,或者是“has a”关系。类中操作的实现过程叫作方法,一个方法有方法名、参数、方法体。 (5) 消息和方法: 对象之间进行通信的结构叫作消息。在对象的操作中,当一个消息发送给某个对象时,消息包含接收对象去执行某种操作的信息。发送一条消息至少要包括说明接收消息的对象名、发送给该对象的消息名(即对象名、方法名)。一般还要对参数加以说明,参数可以是认识该消息的对象所知道的变量名,或者是所有对象都知道的全局变量名。 3.1.2面向对象思想的基本特征 (1) 对象的唯一性: 每个对象都有唯一的标识,通过这种标识,可找到相应的对象。在对象的整个生命期中,它的标识都不改变,不同的对象不能有相同的标识。 (2) 分类性: 指将具有一致的数据结构(属性)和行为(操作)的对象抽象成类。一个类就是这样一种抽象,它反映了与应用有关的重要性质,而忽略其他一些无关内容。任何类的划分都是主观的,但必须与具体的应用有关。 (3) 继承性: 使子类自动共享父类数据结构和方法的机制,这是类之间的一种关系。在定义和实现一个类的时候,可以在一个已经存在的类的基础之上来进行,把这个已经存在的类所定义的内容作为自己的内容,并加入若干新的内容。 继承性是面向对象程序设计语言不同于其他语言的最重要的特点,是其他语言所没有的。在类层次中,子类只继承一个父类的数据结构和方法,称为单重继承; 子类继承了多个父类的数据结构和方法,称为多重继承。 在软件开发中,类的继承性使所建立的软件具有开放性、可扩充性,它简化了对象、类的创建工作量。采用继承性,提供了类的 |