JAVA语言程序设计(第4版·面向对象编程·项目案例·题库·微课视频版)
1星价
¥55.9
(7.0折)
2星价¥55.9
定价¥79.8
图文详情
- ISBN:9787302629726
- 装帧:70g胶版纸
- 册数:暂无
- 重量:暂无
- 开本:其他
- 页数:430
- 出版时间:2023-06-01
- 条形码:9787302629726 ; 978-7-302-62972-6
本书特色
本书特色:(1)内容包含三大主题:Java编程语言、Java面向对象思想和Java常用类库(2)基于Java 17版本,融入Java 17新增语言特征,体现Java语言新发展与新应用(3)采用基础优先、案例驱动教学方法,提供36个精选综合案例讲解面向对象思想和编程方法(4)数字化教学资源,包括教学大纲、教学课件、电子教案、程序源码、教学进度表和30小时的微课视频(5)提供大量实训练习与实践,包括在线作业、实验指导和编程练习及答案
本书是国家级实验教学示范中心联席会计算机学科组“十四五”规划教材,辽宁省一流线上课程配套教材。本书基于Java 17版本,提供教学大纲、1674页的教学课件、电子教案、程序源码配、教学进度表以及在线作业系统和30小时微课视频,36个综合案例。
内容简介
本书以**的Java 17为基础,全面讲解Java编程语言、Java面向对象技术和Java核心类库。全书共分19章,内容包括Java起步入门,数据类型与运算符,结构化编程,类、对象和方法,数组,字符串类,面向对象特征,Java核心类库,接口与内部类,异常处理,记录、枚举和注解类型,泛型与集合,输入/输出,函数式编程,JavaFX图形界面,事件处理与常用控件,JDBC数据库编程,并发编程基础,Java网络编程等。另外,附录A给出了6个综合案例的设计和实现。
本书知识点全面,体系结构清晰,重点突出,内容组织循序渐进,配有大量精选案例。每章提供编程练习题,帮助读者理解、掌握编程技术。本书提供教学大纲、教学课件、电子教案、程序源码、习题答案、教学进度表、
在线作业和30小时的微课视频等资源。
本书可作为高等院校计算机或相关专业“面向对象程序设计”或“Java程序设计”课程教材,也可作为Java编程爱好者的参考资料。
目录
目录
第1章Java起步入门
1.1Java的起源与演进
1.1.1Java的发展历程
1.1.2Java语言的优点
1.2Java平台与运行机制
1.2.1Java平台与应用领域
1.2.2JVM、JRE和JDK
1.2.3Java字节码与平台
独立
1.3建立开发环境
1.3.1JDK的下载与安装
1.3.2关于环境变量
1.3.3Java API文档
1.4**个Java程序
1.4.1Java程序开发步骤
1.4.2**个程序分析
1.5集成开发环境
1.5.1使用Eclipse开发Java
程序
1.5.2使用IntelliJ IDEA开发
Java程序
1.6JShell交互式编程环境
1.7小结
编程练习
第2章数据类型与运算符
2.1Java数据类型
2.1.1基本数据类型
2.1.2引用数据类型
2.2标识符与语句
2.2.1Java标识符
2.2.2Java关键字
2.2.3变量与赋值
2.2.4语句
2.3基本数据类型及字面值
2.3.1整数类型
2.3.2浮点类型
2.3.3字符类型
2.3.4布尔类型
2.4字符串类型
2.5软件开发过程
2.6数据类型转换
2.6.1自动类型转换
2.6.2强制类型转换
2.6.3表达式类型自动提升
2.7运算符
2.7.1算术运算符
2.7.2关系运算符
2.7.3逻辑运算符
2.7.4赋值运算符
2.7.5位运算符
2.7.6运算符的优先级和
结合性
2.8程序文档风格和注释
2.8.1一致的缩进和空白
2.8.2块的风格
2.8.3程序注释
2.9案例学习——求解线性
方程组
2.10案例学习——计算并显示当前
时间
2.11小结
编程练习
第3章结构化编程
3.1选择结构
3.1.1单分支if语句
3.1.2双分支if…else语句
3.1.3条件运算符
3.1.4嵌套的if语句和多分支的
if…else语句
3.2switch语句与switch表
达式
3.2.1switch语句
3.2.2switch表达式
3.3案例学习——两位数加减
运算
3.4循环结构
3.4.1while循环
3.4.2do…while循环
3.4.3for循环
3.4.4循环的嵌套
3.4.5break语句和continue
语句
3.5案例学习——求*大公
约数
3.6案例学习——打印输出若干
素数
3.7小结
编程练习
第4章类、对象和方法
4.1面向对象概述
4.1.1OOP的产生
4.1.2基本概念
4.1.3OOP的优势
4.2定义类与创建对象
4.2.1类的定义
4.2.2创建和使用对象
4.2.3用UML图表示类
4.2.4理解栈与堆
4.3构造方法
4.3.1无参数构造方法
4.3.2带参数构造方法
4.3.3构造方法的重载
4.3.4this关键字
4.4案例学习——使用自定义Date
日期类
4.5方法设计
4.5.1如何设计方法
4.5.2调用方法
4.5.3方法重载
4.5.4方法参数的传递
4.6案例学习——分数类Fraction
的设计
4.7静态变量和静态方法
4.7.1静态变量
4.7.2静态方法
4.7.3静态工厂方法
4.7.4单例模式
4.7.5方法递归
4.8案例学习——打印斐波那契
数列
4.9对象初始化
4.9.1实例变量的初始化
4.9.2静态变量的初始化
4.10变量的作用域
4.11局部变量类型推断
4.12垃圾回收
4.13小结
编程练习
第5章数组
5.1创建和使用数组
5.1.1声明和创建数组
5.1.2访问数组元素
5.1.3数组初始化器
5.1.4增强的for循环
5.2数组的应用
5.2.1数组元素的复制
5.2.2数组参数与返回值
5.2.3可变参数的方法
5.2.4数组的查找
5.3案例学习——数组起泡
排序
5.4java.util.Arrays类
5.4.1数组的复制
5.4.2数组的排序
5.4.3元素的查找
5.4.4数组的比较
5.4.5填充数组元素
5.5案例学习——桥牌随机
发牌
5.6二维数组
5.6.1二维数组的定义
5.6.2数组元素的使用
5.6.3数组初始化器
5.6.4实例——矩阵乘法
5.6.5不规则二维数组
5.7案例学习——打印输出魔
方数
5.8小结
编程练习
第6章字符串类
6.1String类及基本操作
6.1.1创建String类对象
6.1.2字符串基本操作
6.1.3String对象的不变性
6.1.4字符串比较
6.1.5字符串的查找和
匹配
6.1.6字符串的拆分与
组合
6.1.7字符串转换为数组
6.2文本块
6.3命令行参数
6.4格式化数据
6.5StringBuilder类
6.5.1创建StringBuilder
对象
6.5.2StringBuilder类常用
操作
6.5.3“+”运算符的重载
6.6案例学习——判定回
文串
6.7案例学习——字符串加密、
解密
6.8小结
编程练习
第7章面向对象特征
7.1面向对象的三大特征
7.2包、类库与模块
7.2.1包与package语句
7.2.2类的导入
7.2.3Java类库
7.2.4Java模块系统
7.3封装性与访问权限
7.3.1类的访问权限
7.3.2类成员的访问权限
7.4类的继承
7.4.1类继承的实现
7.4.2方法覆盖
7.4.3super关键字
7.4.4调用父类的构造方法
7.5final关键字
7.5.1final修饰类
7.5.2final修饰方法
7.5.3final修饰变量
7.6抽象类
7.7对象转换与多态性
7.7.1对象转换
7.7.2instanceof运算符
7.7.3多态与动态绑定
7.8案例学习——自定义类库的
开发
7.9小结
编程练习
第8章Java核心类库
8.1java.lang.Object类
8.1.1toString()方法
8.1.2equals()方法
8.1.3hashCode()方法
8.1.4clone()方法
8.2java.lang.Math类
8.3java.lang.System类
8.4基本类型包装类
8.4.1Character 类
8.4.2Boolean类
8.4.3创建数值类对象
8.4.4数值类的常量
8.4.5自动装箱与自动拆箱
8.4.6字符串与基本类型
转换
8.5案例学习——一个整数栈的
实现
8.6BigInteger类和BigDecimal
类
8.7日期和时间API
8.7.1LocalDate本地
日期类
8.7.2LocalTime本地
时间类
8.7.3LocalDateTime本地日期
和时间类
8.7.4Instant类、Duration类
和Period类
8.7.5其他常用类
8.7.6日期和时间API的解析
和格式化
8.8案例学习——打印输出
年历
8.9小结
编程练习
第9章接口与内部类
9.1接口
9.1.1接口的定义
9.1.2常量
9.1.3接口的实现
9.1.4接口的继承
9.1.5接口类型的使用
9.2接口的非抽象方法
9.2.1静态方法
9.2.2默认方法
9.2.3私有方法
9.2.4解决默认方法冲突
9.3内部类
9.3.1成员内部类
9.3.2静态内部类
9.3.3匿名内部类
9.3.4局部内部类
9.4接口示例
9.4.1ComparableT
接口
9.4.2ComparatorT
接口
9.5案例学习——比较员工对象
大小
9.6小结
编程练习
第10章异常处理
10.1异常与异常类
10.1.1异常的概念
10.1.2异常类
10.2捕获异常
10.2.1异常的抛出与
捕获
10.2.2try…catch…finally
语句
10.3捕获多个异常
10.4throws短语和throw
语句
10.5try…with…resources
语句
10.6自定义异常类
10.7断言
10.7.1使用断言
10.7.2开启和关闭断言
10.7.3何时使用断言
10.8案例学习——数组不匹配
异常
10.9小结
编程练习
第11章记录、枚举和注解类型
11.1记录类型
11.2枚举类型
11.2.1枚举类型的定义
11.2.2枚举类型的方法
11.2.3枚举在switch语句
中的应用
11.2.4枚举类型的构造
方法
11.3注解类型
11.3.1注解概述
11.3.2标准注解
11.3.3定义注解类型
11.3.4标准元注解
11.4小结
编程练习
第12章泛型与集合
12.1泛型
12.1.1泛型类
12.1.2泛型接口
12.1.3泛型方法
12.1.4通配符(?)的使用
12.1.5有界类型参数
12.1.6类型擦除
12.2集合框架
12.3List接口及实现类
12.3.1List的操作
12.3.2ArrayList类
12.3.3遍历集合元素
12.3.4数组转换为List
对象
12.4Set接口及实现类
12.4.1HashSet类
12.4.2用Set对象实现集合
运算
12.4.3TreeSet类
12.4.4对象顺序
12.5Queue接口及实现
类
12.5.1Queue接口和Deque
接口
12.5.2ArrayDeque类和
LinkedList类
12.5.3集合转换
12.6案例学习——用集合存储、
遍历员工记录
12.7Map接口及实现类
12.7.1Map接口
12.7.2HashMap类
12.7.3TreeMap类
12.7.4在Map键和值上
迭代
12.7.5Hashtable类和Enu
meration接口
12.8Collections类
12.9案例学习——用Map统计
单词数量
12.10小结
编程练习
第13章输入/输出
13.1I/O概述
13.1.1File类应用
13.1.2文本I/O与二进制
I/O
13.2二进制I/O流
13.2.1OutputStream类和
InputStream类
13.2.2FileOutputStream类和
FileInputStream类
13.2.3BufferedOutputStream类
和BufferedInputStream
类
13.2.4DataOutputStream类和
DataInputStream类
13.2.5PrintStream类
13.2.6标准输入/输出流
13.3案例学习——文件加密、解密
程序
13.4文本I/O流
13.4.1Reader类和Writer类
13.4.2FileWriter类和
FileReader类
13.4.3BufferedReader类和
BufferedWriter类
13.4.4PrintWriter类
13.4.5使用Scanner对象
13.5案例学习——统计文件行数、
单词数和字符数
13.6对象序列化
13.6.1对象序列化与
对象流
13.6.2向ObjectOutputStream
中写入对象
13.6.3从ObjectInputStream
中读取对象
13.6.4序列化数组
13.7Files类操作
13.7.1Path对象
13.7.2创建和删除目录及
文件
13.7.3文件属性操作
13.7.4文件和目录的复制与
移动
13.7.5获取目录的对象
13.7.6小文件的读写
13.7.7使用Files类创建流
对象
13.8小结
编程练习
第14章函数式编程
14.1Lambda表达式
14.1.1从匿名类到Lambda
表达式
14.1.2Lambda表达式
语法
14.1.3函数式接口
14.2预定义函数式接口
14.2.1ConsumerT
接口
14.2.2SupplierT
接口
14.2.3PredicateT
接口
14.2.4FunctionT,R
接口
14.3方法引用和构造方法
引用
14.3.1方法引用
14.3.2构造方法引用
14.4Stream API
14.4.1流概述
14.4.2创建与获得流
14.4.3连接流和限制流
14.4.4过滤流
14.4.5流转换
14.4.6流归约
14.4.7收集结果
14.4.8基本类型流
14.4.9并行流
14.5案例学习——用Stream统计
员工的平均年龄
14.6案例学习——用Stream计算
多个数的斐波那契数
14.7小结
编程练习
第15章JavaFX图形界面
15.1JavaFX概述
15.1.1Java GUI编程
简史
15.1.2添加JavaFX软
件包
15.1.3JavaFX的主要
功能
15.2JavaFX程序基本结构
15.2.1舞台和场景
15.2.2场景图和节点
15.2.3Application类生命周期
方法
15.2.4JavaFX程序启动
15.3JavaFX属性与绑定
15.3.1JavaFX属性
15.3.2属性绑定
15.4JavaFX界面布局
15.4.1JavaFX坐标系
15.4.2Pane面板
15.4.3HBox面板
15.4.4VBox面板
15.4.5BorderPane面板
15.4.6FlowPane面板
15.4.7GridPane面板
15.4.8StackPane面板
15.4.9使用CSS设置控件
样式
15.5Color类和Font类
15.5.1Color类
15.5.2Font类
15.6JavaFX形状
15.6.1Line类
15.6.2Rectangle类
15.6.3Circle类
15.6.4Ellipse类
15.6.5Arc类
15.6.6Polygon类
15.6.7Text类
15.7Image类和ImageView
类
15.8特效实现
15.8.1阴影效果
15.8.2模糊效果
15.8.3倒影效果
15.8.4发光效果
15.9案例学习——考试成绩
分布图
15.10小结
编程练习
第16章事件处理与常用控件
16.1事件处理
16.1.1事件处理模型
16.1.2事件类和事件
类型
16.1.3使用事件处理器
16.1.4动作事件
16.1.5鼠标事件
16.1.6键盘事件
16.1.7为属性添加监
听器
16.2常用控件
16.2.1Label类
16.2.2Button类
16.2.3TextField类和
PasswordField类
16.2.4TextArea类
16.2.5CheckBox类
16.2.6RadioButton类
16.2.7ComboBox类
16.2.8Slider类
16.2.9菜单设计
16.2.10FileChooser类
16.3案例学习——一个猜数
游戏
16.4音频和视频
16.5动画
16.5.1过渡动画
16.5.2淡出效果
16.5.3移动效果
16.5.4缩放效果
16.5.5旋转效果
16.5.6时间轴动画
16.6案例学习——升国旗
奏国歌
16.7小结
编程练习
第17章JDBC数据库编程
17.1数据库简介
17.1.1关系数据库简述
17.1.2数据库语言SQL
17.2JDBC体系结构
17.2.1JDBC访问数据库
17.2.2JDBC API
17.3数据库访问步骤
17.3.1加载驱动程序
17.3.2建立连接对象
17.3.3创建语句对象
17.3.4执行语句获得执行
结果
17.3.5关闭有关对象
17.4使用PreparedStatement
对象
17.4.1创建PreparedStatement
对象
17.4.2带参数的SQL
语句
17.5创建和访问 MySQL
数据库
17.5.1创建数据库和表
17.5.2访问MySQL
数据库
17.6案例学习——使用数据源
连接数据库
17.7DAO设计模式
17.8可滚动和可更新的
ResultSet
17.8.1可滚动的ResultSet
17.8.2可更新的ResultSet
17.9案例学习——数据库存取
图像数据
17.10小结
编程练习
第18章并发编程基础
18.1Java多线程
18.2创建任务和线程
18.2.1实现Runnable
接口
18.2.2继承Thread类
18.2.3主线程与守护
线程
18.3线程的状态与调度
18.3.1线程的状态
18.3.2线程的优先级和
调度
18.3.3控制线程的结束
18.4线程同步与对象锁
18.4.1线程冲突与原子
操作
18.4.2方法同步
18.4.3块同步
18.5线程协调
18.5.1不正确的设计
18.5.2监视器模型
18.6并发工具
18.6.1原子变量
18.6.2Executor和
ExecutorService
18.6.3Callable和
Future
18.6.4使用Lock锁定
对象
18.7案例学习——百米飞人
大战
18.8小结
编程练习
第19章Java网络编程
19.1网络编程概述
19.1.1网络分层与协议
19.1.2客户服务器结构
19.1.3IP地址和域名
19.1.4端口号与套接字
19.2基于TCP的通信
19.2.1基于TCP和UDP通信
的对比
19.2.2ServerSocket类和
Socket类
19.2.3简单的TCP通信的
例子
19.3基于UDP的通信
19.3.1DatagramSocket类和
DatagramPacket类
19.3.2简单的UDP通信
例子
19.4基于HTTP的通信
19.4.1理解HTTP
19.4.2URL和URL类
19.4.3URLConnection类
19.5案例学习——访问Web
应用程序
19.6小结
编程练习
附录A综合案例
案例1——英文字母“随机漫步”
案例2——八皇后问题
案例3——简单的日历程序
案例4——简易计算器
案例5——简单的五子棋游戏
案例6——简单的Web服务器
参考文献
展开全部
预估到手价 ×
预估到手价是按参与促销活动、以最优惠的购买方案计算出的价格(不含优惠券部分),仅供参考,未必等同于实际到手价。
确定