《Java 8高级套用与开发》是QST青软实训推出的“在实践中成长”系列丛书之一,作者赵克玲已从事计算机教学和项目开发多年,拥有丰富的教学和实践经验。
本书在Java面向对象编程的基础上,对Java的高级套用进行深入剖析和讲解。全书内容涵盖档案、IO流、JDBC编程、Swing UI设计、UI高级组件使用、执行绪、Java网路编程、类载入、反射、枚举、注解、国际化和格式化处理以及Java 8新特性。
书中所有代码都是基于Java 8环境下调试运行,并对Java 8的Lambda表达式、函式式接口、方法引用、接口的默认方法和静态方法、Stream API等一些新特性进行全面深入讲解和套用。
本书的特色是採用一个“Q-DMS数据挖掘”项目,将所有章节重点技术进行贯穿,每章项目代码会层层叠代不断完善,最终形成一个完整的系统。通过贯穿项目以点连线、多线成面,使得读者能够快速理解并掌握各项重点知识,全面提高分析问题、解决问题以及动手编码的能力。
基本介绍
- 书名Java 8高级套用与开发
- 作者赵克玲 @QST
- ISBN978-7-302-44352-0
- 页数430页
- 定价59.5
- 出版社清华大学出版社
- 出版时间2016年9月
- 开本185mm X 260mm
- 印章28.25
- 字数709千字
内容简介
本书在Java面向对象编程的基础上,对Java的高级套用进行深入剖析和讲解。全书内容涵盖档案、IO流、JDBC编程、Swing UI设计、UI高级组件使用、执行绪、Java网路编程、类载入、反射、枚举、注解、国际化和格式化处理以及Java 8新特性。
书中所有代码都是基于Java 8环境下调试运行,并对Java 8的Lambda表达式、函式式接口、方法引用、接口的默认方法和静态方法、Stream API等一些新特性进行全面深入讲解和套用。
本书由浅入深对Java SE高级技术进行了系统讲解,并且重点突出、强调动手操作能力,以一个项目贯穿所有章节的任务实现,使得读者能够快速理解并掌握各项重点知识,全面提高分析问题、解决问题以及动手编码的能力。
本书适用面广,可作为高校、培训机构的Java教材,适用于计算机科学与技术、软体外包、计算机软体、计算机网路、电子商务等专业的程式设计课程的教材。
丛书序言
当今IT产业发展迅猛,各种技术日新月异,在发展变化如此之快的年代,学习者已经变得越来越被动。在这种大背景下,如何快速地学习一门技术并能够做到学以致用,是很多人关心的问题。一本书、一堂课只是学习的形式,而真正能够达到学以致用目的则是融合在书及课堂上的学习方法,使学习者具备了学习技术的能力。
一、“在实践中成长”丛书介绍
QST青软实训“在实践中成长”丛书在技术上、教学和学习方法上进行最佳化升级,此次出版的丛书由QST青软实训联合高等教育的专家、IT企业的行业及技术专家共同编写,既涵盖新技术及技术的升级,融合了深入到高校四年教育中所的IT技术学习方法及教学方法。“在实践中成长”丛书系列教材包括
- 《Java 8基础套用与开发》
- 《Java 8高级套用与开发》
- 《Oracle资料库套用与开发》
- 《Java Web技术及套用》
- 《Web前端设计与开发——HTML+CSS+JavaScript+HTML5+jQuery》
- 《Java EE轻量级框架套用与开发——S2SH》
- 《Android程式设计与开发》
- 《Linux作业系统》
- 《ZigBee技术开发——CC2530单片机技术原理及套用》
- 《Zigbee技术开发——Z-Stack协定栈原理及套用》
- 《ARM体系结构与接口技术--基于ARM11 S3C6410》
- 《Linux应用程式开发》
- 《嵌入式图形界面开发》
- 《Altium Designer原理图设计与PCB製作》
二、“在实践中成长”丛书的创新点及优势
1.面向学习者
以一个完整的项目贯穿技术点,以点连线、多线成面,通过项目驱动学习方法使学习者轻鬆的将技术学习转化为技术能力。
2.面向高校教师
为教学提供完整的课程产品组件及服务,满足高校教学各个环节的资源支持。
前言
本书不是一本简单的Java教材,不是知识点的铺陈,而是致力于将知识点融入实际项目的开发中。作为Java技术教材,最困难的事情是将一些複杂、难以理解的技术和思想让初学者能够轻鬆理解并快速掌握。本书由浅入深系统地讲解了IO数据流操作,JDBC访问资料库的方法、步骤、规范及技巧,GUI界面设计及事件处理技巧,多执行绪实现多任务处理,Socket实现网路编程,以及Java 8新特性的讲解和套用。并对每个知识点都进行了深入分析,针对知识点在语法、示例、代码及任务实现上进行阶梯式层层强化,让读者对知识点从入门到灵活运用一步一步脚踏实地进行。
本书的特色是採用一个“Q-DMS数据挖掘”项目,将所有章节重点技术进行贯穿,每章项目代码会层层叠代不断完善,最终形成一个完整的系统。通过贯穿项目以点连线、多线成面,使得读者能够快速理解并掌握各项重点知识,全面提高分析问题、解决问题以及动手编码的能力。
1.项目简介
Q-DMS数据挖掘项目是一个基于C/S(Client/Server,客户/伺服器)架构的系统,由Q-DMS客户端和Q-DMS伺服器端两部分组成
- Q-DMS客户端作为系统的一部分,其主要任务是对数据进行採集、分析和匹配,并将匹配成功的数据传送到Q-DMS伺服器端,将匹配成功的不同类型数据保存到相应的日誌档案中。
- Q-DMS伺服器端用于接收客户端传送来的匹配数据,并将数据保存到资料库中,以便多个客户端的数据同步。
Q-DMS数据挖掘项目可以对多种数据类型进行採集,例如日誌数据信息的採集、物流数据信息的採集等,多种数据信息都是基于继承关係。
2.贯穿项目模组
Q-DMS贯穿项目的所有模组实现穿插到《Java 8基础套用与开发》和《Java 8高级套用与开发》的所有章节中,每个章节的任务均是在前一章节的基础上进行实现,对项目逐步进行叠代、升级,最终形成一个完整的项目,并将Java课程重点技能点进行强化套用。其中,《Java 8基础套用与开发》是基于DOS选单驱动模式下完成数据採集、数据匹配以及数据显示功能模组的实现;《Java 8高级套用与开发》是在上一本书所实现的功能基础上,使用Swing GUI图形界面用户事件互动模式叠代实现了数据採集、过滤匹配、数据保存、数据传送、数据显示及刷新功能。
3.基础章节任务实现
本书由QST青软实训的赵克玲老师负责本书编写工作和全书统稿,还有郭全友、冯娟娟参与本书的审核和修订工作。作者均已从事计算机教学和项目开发多年,拥有丰富的教学和实践经验。由于时间有限,书中难免有疏漏和不足之处,肯请广大读者及专家不吝赐教。本书的相关资源,请到锐聘学院教材丛书资源网book.moocollege.cn下载。
目录
第1章档案及IO流
任务驱动
学习路线
本章目标
1.1 档案
1.1.1 档案系统和路径
1.1.2 File类
1.1.3 FilenameFilter接口
1.2 IO流
1.2.1 流的分类
1.2.2 流的体系结构
1.3 位元组流
1.3.1 InputStream
1.3.2 OutputStream
1.4 字元流
1.4.1 Reader
1.4.2 Writer
1.5 过滤流和转换流
1.5.1 过滤流
1.5.2 转换流
1.6 对象流
1.6.1 对象序列化与反序列化
1.6.2 ObjectInputStream和ObjectOutputStream
1.7 NIO
1.7.1 NIO概述
1.7.2 Buffer
1.7.3 Channel
1.7.4 NIO.2
1.8 贯穿任务实现
1.8.1 实现【任务1-1】
1.8.2 实现【任务1-2】
1.8.3 实现【任务1-3】
1.8.4 实现【任务1-4】
本章
小结
Q&A
章节练习
习题
上机
第2章JDBC编程
任务驱动
学习路线
本章目标
2.1 JDBC基础
2.1.1 JDBC简介
2.1.2 JDBC驱动
2.1.3 JDBC API
2.2 资料库环境搭建
2.2.1 创建资料库表
2.2.2 设定Oracle驱动类路径
2.3 资料库访问
2.3.1 载入资料库驱动
2.3.2 建立数据连线
2.3.3 创建Statement对象
2.3.4 执行SQL语句
2.3.5 访问结果集
2.4 运算元据库
2.4.1 execute()方法
2.4.2 executeUpdate()和executeLargeUpdate()方法
2.4.3 PreparedStatement接口
2.4.4 CallableStatement接口
2.4.5 资料库访问最佳化
2.5 集元数据
2.5.1 DatabaseMetaData接口
2.5.2 ResultSetMetaData接口
2.6 事务处理
2.6.1 事务
2.6.2 保存点
2.6.3 批量更新
2.7 贯穿任务实现
2.6.1 实现【任务2-1】
2.6.2 实现【任务2-2】
2.6.3 实现【任务2-3】
2.6.4 实现【任务2-4】
本章
小结
Q&A
章节练习
习题
上机
第3章Swing UI设计
任务驱动
学习路线
本章目标
3.1 GUI概述
3.1.1 AWT和Swing
3.1.2 Swing组件层次
3.2 容器
3.2.1 JFrame顶级容器
3.2.2 JPanel中间容器
3.3 布局
3.3.1 FlowLayout流布局
3.3.2 BorderLayout边界布局
3.3.3 GridLayout格线布局
3.3.4 CardLayout卡片布局
3.3.5 BoxLayout盒布局
3.3.6 NULL空布局
3.4 事件处理
3.4.1 Java事件处理机制
3.4.2 事件类
3.4.3 监听接口
3.4.4 事件处理步骤
3.4.5 键盘事件
3.4.6 滑鼠事件
3.4.7 适配器
3.5 基本组件
3.5.1 Icon图示
3.5.2 JButton按钮
3.5.3 JLabel标籤
3.5.4 文本组件
3.5.5 JComboBox组合框
3.5.6 JList列表框
3.5.7 JRadioButton单选按钮
3.5.8 JCheckBox複选框
3.5.9 计算器
3.6 贯穿任务实现
3.6.1 实现【任务3-1】
3.6.2 实现【任务3-2】
3.6.3 实现【任务3-3】
本章
小结
Q&A
章节练习
习题
上机
第4章高级UI组件
任务驱动
学习路线
本章目标
4.1 对话框
4.1.1 JDialog对话框
4.1.2 JOptionPane标準对话框
4.1.3 JFileChooser档案对话框
4.1.4 JColorChooser颜色对话框
4.2 选单
4.2.1 下拉式选单
4.2.2 弹出式选单
4.3 工具列
4.4 表格
4.4.1 JTable类及相关接口
4.4.2 使用表格
4.5 树
4.5.1 JTree类及相关接口
4.5.2 使用树
4.6 贯穿任务实现
4.6.1 实现【任务4-1】
4.6.2 实现【任务4-2】
4.6.3 实现【任务4-3】
4.6.4 实现【任务4-4】
本章
小结
Q&A
章节练习
习题
上机
第5章执行绪
任务驱动
学习路线
本章目标
5.1 执行绪概述
5.1.1 执行绪和进程
5.1.2 Java执行绪模型
5.1.3 主执行绪
5.2 创建执行绪
5.2.1 继承Thread类
5.2.2 实现Runnable接口
5.2.3 使用Callable和Future接口
5.3 执行绪生命周期
5.3.1 新建和就绪状态
5.3.2 运行和阻塞状态
5.3.3 死亡状态
5.4 执行绪优先权
5.5 执行绪同步
5.5.1 同步代码块
5.5.2 同步方法
5.5.3 同步锁
5.6 执行绪通信
5.7 Timer和Swing Timer
5.7.1 Timer
5.7.2 Swing Timer
5.8 贯穿任务实现
5.8.1 实现【任务5-1】
本章
小结
Q&A
章节练习
习题
上机
第6章网路编程
任务驱动
学习路线
本章目标
6.1 网路基础
6.1.1 网路类型
6.1.2 TCP/IP协定
6.1.3 IP位址和连线埠
6.1.4 域名与DNS
6.2 Java网路API
6.2.1 InetAddress类
6.2.2 URL类
6.2.3 URLConnection类
6.2.4 URLDecoder和URLEncoder类
6.3 基于TCP的网路编程
6.3.1 Socket类
6.3.2 ServerSocket类
6.3.3 聊天室
6.4 贯穿任务实现
6.4.1 实现【任务6-1】
6.4.2 实现【任务6-2】
6.4.3 实现【任务6-3】
本章
小结
Q&A
章节练习
习题
上机
第7章Java高级套用
任务驱动
学习路线
本章目标
7.1 类载入
7.1.1 Class类
7.1.2 类载入步骤
7.1.3 类载入器
7.1.4 ClassLoader类
7.2 反射
7.2.1 Executable抽象类
7.2.2 Constructor类
7.2.3 Method类
7.2.4 Field类
7.2.5 Parameter类
7.3 枚举
7.3.1 定义枚举类
7.3.2 包含属性和方法的枚举类
7.3.3 Enum类
7.4 注解
7.4.1 基本注解
7.4.2 定义注解
7.4.3 使用注解
7.4.4 元注解
7.5 国际化
7.5.1 Locale类
7.5.2 ResourceBundle类
7.6 格式化处理
7.6.1 数字格式化
7.6.2 货币格式化
7.6.3 日期格式化
7.6.4 Java 8新增的DateTimeFormatter
7.6.5 讯息格式化
7.7 贯穿任务实现
7.7.1 实现【任务7-1】
7.7.2 实现【任务7-2】
本章
小结
Q&A
章节练习
习题
上机
第8章Java 8新特性
任务驱动
学习路线
本章目标
8.1 接口的默认方法和静态方法
8.2 Lambda表达式
8.2.1 Lambda规范
8.2.2 Lambda套用
8.3 函式式接口
8.4 ::方法引用
8.5 Java 8新增类库
8.5.1 Optional类
8.5.2 Stream API
8.5.3 Base64类
8.5.4 并行数组
8.6 贯穿任务实现
8.6.1 实现【任务8-1】
8.6.2 实现【任务8-2】
本章
小结
Q&A
章节练习
习题
上机
附录A WindowBuilder外挂程式
A.1 WindowBuilder简介
A.2 WindowBuilder外挂程式安装
A.3 WindowBuilder外挂程式的使用过程
A.4 WindowBuilder实例
A.4.1 窗体的创建
A.4.2 窗体的属性及布局
A.4.3 控制项的添加与设定
A.4.4 添加按钮及事件处理
A.4.5 运行代码
附录B 资料库连线池
B.1 资料库连线池简介
B.2 DBCP数据源
B.2 C3P0数据源
附录C RowSet