本书对Java编程原理、基础知识、核心技术进行了由浅入深、循序渐进的介绍。全书共13章,包括Java概述、Java程序的结构及类型、Java语言基础、抽象和封装、继承和多态、Java核心类、图形用户界面、输入输出流、JDBC数据库连接、Java异常处理、并发编程基础、Java与Java Web以及课程设计综合案例。书中重要知识点都与案例紧密结合,有助于读者理解知识、掌握知识、应用知识。本书内容逻辑顺序安排合理,讲解浅显易懂,有学习方法指导、典型案例作为参考,非常实用。
本书可以作为高等院校计算机相关专业的教材,也可以作为相关技术人员和Java爱好者自学的参考书。
Java从1995年诞生发展到现在,成为目前流行的程序设计语言之一,特别是随着互联网、人工智能、大数据、物联网技术的迅猛发展,Java也与时俱进,不断推出新版本、增加新特征,以适应时代发展的要求。
多年教学过程中,作者选用过多部同类教材,这些教材有的内容充实、知识新颖,有的案例丰富、讲解生动,但针对学生特点和有限的课时,这些教材又或多或少显现出不适宜之处,要么内容太多太深,教学课时不够,学生难以接受; 要么虽案例丰富但与生产实践结合不紧密,内容讲解也不够完整、系统,知识点逻辑结构编排不合理,不便学生构建科学的知识体系。针对这些问题,作者结合多年来的Java教学经验和开发体会,结合企业需求,在参考了国内外同类优秀教材,并与多名从事本课程教学的教师研究后,确定教材编写内容、编写风格,编写了本书。与同类教材相比,本书具有以下几个显著特点:
(1) 内容精练、系统。Java是一门新型技术,是很多学科都用到的技术,其包含很多内容,为在有限的时间内将基础的、关键的知识介绍给读者,在内容组织上进行了严格的筛选和控制。教材建设过程中,为确保全书深度广度适中,采用循序渐进、从易到难的方法组织教材内容,介绍相关知识。对书中的重难点理论知识和关键实践操作,对应部分给出微课视频讲解和演示二维码。
(2) 体现直观实用、易学、易教的编写理念。Java程序设计一直被认为是比较难教和难学的一门专业基础课,本书编写时,遵从学生的认知规律,将抽象的Java技术尽量同比较直观的、与生活实际密切联系的实例结合起来,所以组织教材内容时,针对每个知识点,精选典型的、新颖的、有趣的学科前沿应用实例,通过实例介绍,让学生对其Java特点形成比较深刻的感性认识,从而带着好奇去探究其深入的原理及应用,达到学生易学、教师易教的目的。
(3) 教材按一体化形式编写,突出能力培养。主要体现在教材编写过程中,将理论讲解和技能操作融为一体,以工程问题为导向,通过工程问题激发学生探索兴趣。特别关注编程在科学和工程中的应用,涵盖包括人脸识别、语音信号分析、网络应用等不同领域的工程问题,将理论讲解和技能操作融为一体,在讲授编程方法的同时注重培养计算思维,为深度学习专业领域知识奠定基础。在介绍每个知识点时,先设问题,再介绍知识点,最后总结使用该知识点解决问题的具体实现过程,强调学生实践能力、思考能力和创新能力的培养。
(4) 教材结构统一完整。 每章由教学重难点提示、教学内容讲解、应用实例、本章归纳总结、习题与实践等部分组成。这样不仅有理论介绍,还有相应的练习,为进一步理解和掌握抽象知识提供了保障。
全书共13章。第1章介绍了Java语言的发展、特点、工作原理、运行环境的建立; 第2章通过案例介绍了Java程序的两种基本模式的结构及应用; 第3章介绍了Java编程基础语法; 第4章讲解了类的抽象、封装、包及访问控制、内部类等; 第5章详细讲述了继承、多态,非访问控制符、接口等概念及应用; 第6章详细介绍了Java常用的基础类与集合类的使用; 第7章介绍了Java图形用户界面中Java SE的Swing组件、AWT组件事件处理模型、布局管理器等; 第8章介绍了Java中输入输出流的使用及文件的操作; 第9章详细介绍了Java通过JDBC连接、访问数据库的过程; 第10章介绍了Java的异常处理机制; 第11章介绍了多线程和网络编程; 第12章通过案例介绍了Java与Java Web的关系; 第13章通过一个完整的案例开发,详细讲解应用Java开发应用程序的方法和过程。
本书由段新娥、张志旺担任主编,负责整体结构的设计和全书的统稿定稿; 张志东、周锁成担任副主编。具体编写分工如下: 第1、9章由段新娥编写,第2章由王红梅编写,第3章由张志东编写,第4章由曾照华编写,第5章由周锁成编写,第6章由朱智磊编写,第7章由张学峰编写,第8章由刘红梅编写,第10章由张敬环编写,第11章由康云香编写,第12章由冀庚编写,第13章由张志旺编写。
为便于教学,本书提供丰富的配套资源,包括教学课件、教学大纲、课程设计指导、习题答案、程序源码、微课视频、在线作业。
资源下载提示
课件等资源: 扫描封底的图书资源二维码,在公众号书圈下载。
习题答案: 扫描课后习题旁的二维码,可以获取答案。
视频等资源: 扫描封底的文泉云盘防盗码,再扫描书中相应章节的二维码,可以在线学习。
在线作业: 扫描封底的作业系统二维码,登录网站在线做题及查看答案。
本书在编写过程中,得到许多同仁的支持,同时也参考了大量的书籍,在此向广大同仁和所有参考书籍的作者表示衷心的感谢。
由于时间仓促,加之作者水平有限,书中难免存在疏漏和不妥之处,敬请读者批评指正。
段新娥2025年1月
第1章Java概述
1.1Java语言的发展及特点
1.1.1Java的发展历程
1.1.2Java语言的特点
1.1.3Java平台与应用
1.2Java工作原理
1.2.1Java程序运行机制
1.2.2JVM、JRE和JDK
1.3Java运行环境
1.3.1JDK下载和安装
1.3.2JDK的目录
1.3.3JDK环境变量配置
1.3.4Java API文档的下载与使用
1.4开始编写Java程序
1.4.1第一个Java应用程序
1.4.2程序分析
1.4.3JShell交互式编程环境
1.5集成开发工具
1.5.1Eclipse的下载、安装
1.5.2Eclipse的设置
1.5.3使用Eclipse开发Java项目的基本过程
1.6典型案例分析
1.6.1命令行显示诗句
1.6.2桌面小游戏
1.7本章小结
课后习题
拓展阅读
第2章Java程序的结构及类型
2.1Java程序的类型
2.1.1Java程序的两种模式
2.1.2两种模式的结构特征
2.2Java Application及其应用
2.2.1Java Application实现命令行输入输出
2.2.2Java Application实现图形用户界面输入输出
2.3Java Applet及其应用
2.3.1Java Applet的特点和工作原理
2.3.2Java Applet的应用
2.4典型案例分析
2.4.1使用输入对话框计算贷款到期还款数
2.4.2使用Java Applet实现加法运算
2.4.3使用Java Applet实现画圆
2.5本章小结
课后习题
Java语言程序设计复杂工程问题求解
目录
第3章Java语言基础
3.1Java程序的构成
3.1.1Java程序的基本结构
3.1.2Java程序的编码规则
3.2Java数据类型、常量和变量
3.2.1数据类型
3.2.2常量
3.2.3变量
3.3Java运算符、表达式、控制结构
3.3.1运算符
3.3.2表达式
3.3.3Java结构控制语句
3.4数组
3.4.1数组的声明和创建
3.4.2数组元素的引用
3.4.3数组应用
3.4.4数组Array类
3.5典型案例
3.5.1人脸识别
3.5.2实现桥牌随机发牌
3.6本章小结
课后习题
拓展阅读
第4章抽象和封装
4.1类与对象
4.1.1面向对象程序设计与面向过程程序设计
4.1.2类与对象的理解
4.1.3类的定义
4.1.4对象的实例化
4.1.5构造函数
4.1.6方法的重载
4.2静态变量与静态方法
4.2.1静态变量
4.2.2静态方法
4.2.3静态代码块
4.3包及访问控制
4.3.1包及其使用
4.3.2访问控制
4.3.3类、数据成员和方法的访问控制
4.4内部类
4.4.1成员内部类
4.4.2静态内部类
4.4.3匿名内部类
4.4.4局部内部类
4.5类的关系
4.5.1关联关系
4.5.2组合关系
4.5.3聚合关系
4.5.4依赖关系
4.6典型案例分析
4.6.1设计不同品牌汽车并显示信息
4.6.2指纹识别
4.6.3银行信息管理系统应用程序
4.7本章小结
课后习题
拓展阅读
第5章继承和多态
5.1继承
5.1.1继承的基本概念
5.1.2Java 继承的实现
5.1.3方法覆盖
5.1.4成员隐藏
5.2多态
5.2.1多态概念的理解
5.2.2Java中的多态
5.3非访问控制符
5.3.1static
5.3.2abstract
5.3.3final
5.4接口
5.4.1接口概念的理解
5.4.2接口的定义
5.4.3接口的应用
5.5典型案例分析
5.5.1不同类别消费人员购物收费处理
5.5.2学生上网账单管理应用程序
5.5.3银行账户管理
5.5.4动物的生活习性显示
5.6本章小结
课后习题
拓展阅读
第6章Java核心类
6.1Java基础类库
6.1.1Scanner类
6.1.2String类与StringBuffer类
6.1.3Math类和Random类
6.1.4日期类
6.2Java集合类
6.2.1Collection
6.2.2List
6.2.3Set
6.2.4Map
6.3典型案例分析
6.3.1输入字符串以原字符串倒序输出
6.3.2根据出生日期求现在年龄
6.4本章小结
课后习题
第7章图形用户界面
7.1图形用户界面的构成
7.2容器和基本组件
7.2.1Swing概述
7.2.2容器
7.2.3组件
7.2.4简单的Swing程序
7.3布局管理器
7.3.1BorderLayout边布局管理器
7.3.2FlowLayout流布局管理器
7.3.3CardLayout布局(卡片叠式布局)管理器
7.3.4GridLayout网格布局管理器
7.3.5JPanel类及容器的嵌套
7.4事件处理
7.4.1事件处理模型
7.4.2事件类和事件监听器接口
7.4.3事件处理的基本步骤
7.4.4事件适配器及注册事件监听器
7.5JavaFX图形用户界面工具
7.5.1JavaFX简介
7.5.2配置JavaFX开发环境
7.5.3Eclipse中JavaFX Scene Builder的安装及配置
7.5.4JavaFX基础入门
7.6典型案例分析
7.6.1登录界面设计
7.6.2系统主界面设计
7.7本章小结
课后习题
拓展阅读
第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文件过滤器接口
8.3.3文件对话框组件
8.3.4随机存取文件类
8.4应用实例
8.4.1一个文本编辑界面
8.4.2统计文件字符数、行数
8.5本章小结
课后习题
第9章JDBC数据库连接
9.1JDBC概述
9.2JDBC访问数据库
9.2.1JDBC访问数据库的方法
9.2.2JDBC访问数据库的基本过程
9.2.3JDBC连接实例
9.3JDBC的常用类与接口
9.3.1DriverManager类
9.3.2Connection接口
9.3.3Statement和PreparedStatement接口
9.3.4ResultSet接口
9.4使用连接池访问数据库
9.5典型案例分析
9.5.1图书信息查询
9.5.2账户登录信息处理
9.5.3图书信息处理
9.6本章小结
课后习题
第10章Java异常处理
10.1异常概述
10.1.1异常及其分类
10.1.2Java中异常机制的原理
10.2异常处理
10.2.1Java异常处理模型
10.2.2用throws声明异常
10.2.3用throw抛出异常
10.2.4用try和catch捕获异常
10.2.5finally语句
10.2.6异常捕获处理语法规则
10.3自定义异常
10.4典型案例分析
10.4.1打开不存在的文件
10.4.2银行账户取钱异常处理
10.5本章小结
课后习题
第11章并发编程基础
11.1Java多线程简介
11.1.1进程与线程的概念
11.1.2进程与线程的关系
11.2Java中如何实现多线程
11.2.1通过继承Thread类实现多线程
11.2.2通过继承Runnable接口实现多线程
11.2.3线程对象的状态、调度与生命周期
11.2.4线程的同步机制
11.3Java网络编程
11.3.1网络基本概念
11.3.2URL编程
11.3.3Java语言实现底层网络通信
11.4典型案例分析
11.4.1火车票售票模拟程序
11.4.2建立医生和患者之间的双向对话
11.5本章小结
课后习题
第12章Java与Java Web
12.1Java Web概述
12.2Java Web运行与开发环境的安装与配置
12.3典型案例
12.3.1JSP技术开发举例
12.3.2例121程序改进
12.4本章小结
第13章课程设计综合案例
13.1需求分析
13.2系统设计
13.2.1系统功能结构
13.2.2构建开发环境
13.2.3数据库设计
13.2.4文件夹组织结构
13.3系统实现
13.3.1公共模块
13.3.2登录模块设计
13.3.3主窗体设计
13.4系统测试
13.4.1读者管理模块
13.4.2图书信息模块
13.4.3借还模块
13.4.4设置模块
13.4.5报表模块
13.5本章小结
参考文献