-
内容大纲
本书对接信息技术的相关岗位需求,主要满足高等职业教育信息技术类相关专业Java程序设计课程的教学需要,分为Java程序设计基础(学习Java基础)、Java面向对象(学习Java面向对象)、Java核心技术实战(实现多人聊天室系统)和Java实用场景开发(实用场景应用开发)四部分,并通过鸿蒙App开发、多人聊天室系统,以及发送邮件和短信、生成和识别二维码、识别车牌等具有代表性的实用案例项目来讲解Java程序设计基础、Java面向对象、多线程、集合框架、I/O流、网络编程、异常处理、GUI等Java核心编程技术。
本书提供一系列实践场景,通过完成编程任务和分析代码,融入Java编程的概念和技术,帮助学生沉浸式地学习Java核心编程技术。小节根据需要设置【随堂测试】和【动手练习】环节,用于促进师生互动,提高教与学的效果。支持模块化教学,可以使教师根据学生基础和教学目标,选取相关单元进行教学,具有“活页式”教材的效果。
本书体系完整,内容实用,配套资源丰富,既可以作为高等职业教育信息技术类相关专业包括高职和本科学生的学习用书,也可以作为Java技术爱好者的自学参考用书。 -
作者介绍
-
目录
第一部分 学习Java基础
单元1 初识Java
1.1 任务描述
1.2 了解什么是Java
1.3 JDK的下载和安装
1.3.1 区分JVM、JRE和JDK
1.3.2 下载并安装JDK
1.4 完成并分析第一个Java程序
1.4.1 完成第一个Java程序
1.4.2 Java代码的基本格式
1.4.3 Java注释
1.4.4 Java程序入口方法main()
1.5 IntelliJ IDEA的安装和配置
1.5.1 了解什么是IntelliJ IDEA
1.5.2 下载并安装IDEA
1.5.3 在IDEA中配置全局JDK
1.5.4 在IDEA中创建Java项目和Java类
单元2 掌握Java编程基础
2.1 任务描述
2.2 在IDEA中完成一个可以交互的Java程序
2.3 Java编程基础
2.3.1 类、对象、方法和实例变量的概念
2.3.2 方法的调用
2.3.3 数据类型、变量和标识符的使用
2.3.4 算术运算符和赋值运算符的使用
2.4 初识面向对象
2.4.1 构造方法
2.4.2 方法的重载
2.4.3 类的实例成员和静态成员
2.4.4 final关键字
单元3 掌握Java的流程控制和数组类型
3.1 任务描述
3.2 掌握Java的流程控制
3.2.1 关系运算符和逻辑运算符
3.2.2 if判断
3.2.3 switch多重选择
3.2.4 条件表达式
3.2.5 while循环
3.2.6 do while循环
3.2.7 for循环
3.3 掌握Java的数组类型
3.3.1 数组变量的定义和初始化
3.3.2 查看数组的大小并访问数组中的元素
3.3.3 使用for循环遍历数组
3.3.4 使用for each循环遍历数组
3.3.5 多维数组
阶段测试:Java编程基础测试
第二部分 学习Java面向对象
单元4 开发一个简单的鸿蒙App
4.1 任务描述
4.2 搭建鸿蒙开发环境
4.2.1 注册华为账号并开通华为云
4.2.2 登录华为开发者联盟官网完成实名认证
4.2.3 安装并配置鸿蒙开发环境DevEco Studio
4.3 快速开发一个基于Java的鸿蒙App
4.3.1 创建一个新的项目
4.3.2 启动模拟器运行程序
4.4 掌握Java面向对象的基础
4.4.1 认识鸿蒙App中Java的类和包
4.4.2 通过继承编写鸿蒙App的Java类
4.4.3 通过覆盖实现App自身的业务逻辑
4.4.4 掌握super和this关键字
单元5 开发一个可以交互的鸿蒙App
5.1 任务描述
5.2 在布局文件中添加一个单击按钮
5.3 添加initiateUI()方法获得界面组件对象并初始化界面
5.3.1 在MainAbilitySlice类中添加数据成员
5.3.2 在Java中定义方法的语法
5.3.3 添加initiateUI()方法
5.4 实现事件监听者接口处理交互
5.4.1 通过添加addListener()方法来处理单击事件
5.4.2 事件监听者和接口
5.4.3 内部类和内部接口
5.4.4 类的继承关系和Object根类
5.5 在AbilitySlice类的onStart()方法中调用方法初始化界面并添加事件监听者
5.5.1 在onStart()方法中调用initiateUI()方法和addListener()方法
5.5.2 重新启动模拟器并运行程序
5.5.3 匿名内部类
5.6 掌握抽象类、接口和Java的单继承机制
阶段测试:Java面向对象测试
第三部分 实现多人聊天室系统
单元6 准备开发环境
6.1 任务描述
6.2 掌握Maven的基本使用方法
6.2.1 了解什么是Maven
6.2.2 下载并安装Maven
6.2.3 配置Maven的本地仓库位置和中央仓库镜像
6.2.4 mvn命令的使用
6.2.5 在IDEA中配置全局Maven
6.3 掌握Git的基本使用方法
6.3.1 了解什么是Git
6.3.2 下载并安装Git
6.3.3 Git的4个区和5个状态
6.3.4 在本地对源代码进行基本的版本控制
6.3.5 通过远程版本库管理源代码的版本
6.3.6 在IDEA中配置全局Git
阶段测试:使用Maven及Git测试
单元7 连接客户端与服务器端
7.1 了解多人聊天室系统的需求和本单元任务
7.1.1 了解多人聊天室系统的需求
7.1.2 本单元任务描述及实现思路
7.2 编写聊天服务器的ChatServer类
7.2.1 创建ChatServer类
7.2.2 创建绑定到指定端口的ServerSocket对象
7.2.3 监听客户端连接请求
7.2.4 获得socket对象对应的输入流对象
7.2.5 通过调用对象流的readObject()方法来接收客户端的输入
7.2.6 输出客户端进入聊天室的提示信息
7.2.7 向客户端发送欢迎信息
7.3 编写客户端的ChatClient类
7.4 联合测试ChatServer和ChatClient
7.5 编写支持与多个客户端交互的ChatChannel类
7.5.1 线程的引入
7.5.2 编写ChatChannel类
7.6 将版本1代码托管到码云
7.6.1 在码云上添加一个远程仓库
7.6.2 在IDEA中创建本地仓库
7.6.3 在IDEA中将代码提交到本地仓库
7.6.4 在IDEA中建立本地仓库与远程仓库的关联
7.6.5 在IDEA中上传代码到码云
阶段测试:网络编程、I/O流、异常及多线程测试
单元8 让客户端可以不断收发消息
8.1 本单元的任务描述及实现思路
8.1.1 任务描述
8.1.2 实现思路
8.2 修改服务器端的ChatChannel类
8.2.1 使服务器端能不断接收并转发客户端发送的消息
8.2.2 抽取ois、oos和name局部变量为成员变量
8.2.3 抽取接收用户姓名并发送欢迎信息的代码到方法中
8.3 修改客户端的ChatClient类
8.3.1 抽取socket、oos、ois、name局部变量为ChatClient类的成员变量
8.3.2 在客户端添加处理接收消息的线程并启动
8.3.3 在客户端添加处理发送消息的线程并启动
8.3.4 抽取输入并发送姓名和接收欢迎信息的代码到方法中
8.4 联合测试并向码云提交一个新的版本
8.4.1 服务器端与客户端的联合测试
8.4.2 向码云提交一个新的版本
单元9 实现群聊和私聊
9.1 任务描述
9.2 任务1:群聊的实现
9.2.1 群聊的实现思路和集合的引入
9.2.2 增加一个用static修饰的Map类的allMap成员变量
9.2.3 定义一个群发消息给所有客户端的sendToAll()方法
9.2.4 同步allMap和客户端的变化
9.2.5 增加在收到客户端消息时群发消息的代码
9.2.6 联合测试群聊
9.2.7 选择文件并提交到码云
9.3 任务2:私聊的实现
9.3.1 私聊的实现思路和String的相关方法
9.3.2 定义发送私聊消息的sendSecretMsg()方法
9.3.3 解析客户端发送的消息以区分私聊和群聊
9.3.4 联合测试私聊
9.3.5 选择文件并提交到码云
阶段测试:多线程、字符串、I/O流、异常及集合类测试
单元10 提高系统健壮性和用户体验
10.1 任务描述及实现思路
10.2 简单处理服务器端未启动:提示后直接退出
10.2.1 定位处理位置
10.2.2 在处理位置出现提示后直接退出
10.2.3 测试客户端并提交代码到码云
10.3 高级处理服务器端未启动:尝试不断连接服务器
10.3.1 在ChatClient中定义连接服务器的connect()方法
10.3.2 通过调用connect()方法来连接服务器
10.3.3 联合测试并提交到码云
10.4 简单处理聊天过程中服务器端宕机:提示后直接退出
10.4.1 定位处理位置
10.4.2 简单处理聊天过程中服务器端宕机
10.4.3 联合测试简单处理并提交代码到码云
10.5 高级处理聊天过程中服务器端宕机:尝试不断连接服务器
10.5.1 在ChatClient中定义重连方法reconnect()
10.5.2 高级处理聊天过程中服务器端宕机
10.5.3 修改sendNameAndRecvEcho()方法
10.5.4 联合测试高级处理并提交代码到码云
阶段测试:Java程序设计测试
单元11 图形用户界面的实现
11.1 任务描述及实现思路
11.2 实现界面的ClientUI类
11.2.1 将界面组件定义成界面ClientUI类的成员变量
11.2.2 定义搭建界面的initiateUI()方法并在构造方法中调用
11.2.3 使ClientUI类成为事件监听者
11.2.4 定义添加事件监听者的addListener()方法并在构造方法中调用
11.2.5 界面部分单独测试
11.3 完成一个具有图形界面的客户端类
11.3.1 删除ChatClient类中发送消息的线程代码
11.3.2 将ClientUI类定义成ChatClient类的内部类
11.3.3 改为从图形用户界面中输入姓名
11.3.4 在ChatClient类中定义showMessage()方法
11.3.5 在ChatClient类中定义send()方法
11.3.6 用showMessage()方法替换System.out.println()方法
11.4 联合测试并提交代码
11.4.1 联合测试
11.4.2 提交到码云
第四部分 实用场景应用开发
单元12 实现发送邮件和发送短信
12.1 任务描述
12.2 任务1:实现发送邮件
12.2.1 JavaMail介绍
12.2.2 使用JavaMail发送邮件
12.2.3 将发送邮件的代码封装到工具类MailUtil中
12.3 任务2:实现发送短信
12.3.1 阿里短信服务平台API介绍
12.3.2 使用阿里短信服务编写代码实现发送短信
单元13 实现车牌识别系统
13.1 任务描述
13.2 文字识别开发接口Tesseract OCR和百度AI开放平台
13.2.1 文字识别开发接口Tesseract OCR和Java开发包Tess4J
13.2.2 百度AI开放平台OCR服务
13.3 准备测试图片
13.4 使用Tess4J实现车牌识别
13.4.1 创建Maven项目chepai并添加相关依赖
13.4.2 准备中文字库
13.4.3 编码实现车牌识别
13.4.4 将车牌识别代码封装到方法中并测试3个车牌
13.5 使用百度AI开放平台实现车牌识别
13.5.1 编码前的准备
13.5.2 调用百度API接口实现车牌识别系统
13.5.3 使用GsonFormatPlus生成识别结果的实体类Result
13.5.4 定义重载的车牌识别方法
13.5.5 使用webcam-capture增加摄像头抓拍车牌功能
单元14 生成和识别二维码
14.1 任务描述
14.2 创建Maven项目、添加ZXing相关依赖并创建类
14.3 实现生成二维码图片
14.4 实现识别二维码
14.5 将编码和解码封装到工具类QRCodeUtil中
14.6 实现扫码识别二维码
14.6.1 搭建界面
14.6.2 增加一个参数为BufferedImage的识别二维码的方法
14.6.3 定义一个线程不断捕获图片
同类热销排行榜
- C语言与程序设计教程(高等学校计算机类十二五规划教材)16
- 电机与拖动基础(教育部高等学校自动化专业教学指导分委员会规划工程应用型自动化专业系列教材)13.48
- 传感器与检测技术(第2版高职高专电子信息类系列教材)13.6
- ASP.NET项目开发实战(高职高专计算机项目任务驱动模式教材)15.2
- Access数据库实用教程(第2版十二五职业教育国家规划教材)14.72
- 信号与系统(第3版下普通高等教育九五国家级重点教材)15.08
- 电气控制与PLC(普通高等教育十二五电气信息类规划教材)17.2
- 数字电子技术基础(第2版)17.36
- VB程序设计及应用(第3版十二五职业教育国家规划教材)14.32
- Java Web从入门到精通(附光盘)/软件开发视频大讲堂27.92
推荐书目
-

孩子你慢慢来/人生三书 华人世界率性犀利的一枝笔,龙应台独家授权《孩子你慢慢来》20周年经典新版。她的《...
-

时间简史(插图版) 相对论、黑洞、弯曲空间……这些词给我们的感觉是艰深、晦涩、难以理解而且与我们的...
-

本质(精) 改革开放40年,恰如一部四部曲的年代大戏。技术突变、产品迭代、产业升级、资本对接...
[
