Java语言程序设计(第3版)

Java语言程序设计(第3版)

查阅电子书
手机扫码
  • 微信扫一扫

    关注微信公众号

因版权原因待上架

编辑推荐

Java编程基础知识及应用实践

内容简介

本书详细介绍了Java编程语言的基本概念和基础知识。主要内容包括Java语言的基本语法结构、Java语言面向对象的特征、Java基础类库和常用工具类、Java异常处理和断言机制、Java输入输出处理和多线程编程、Java图形用户界面和事件处理、Java小程序和多媒体应用开发、网络编程和数据库编程、泛型和Java集合框架等。

章节目录

封面页

书名页

版权页

内容简介

网址及二维码

前言

目录

第1章 Java语言概述

1.1 Java起源与发展

1.1.1 Java的起源

1.1.2 Java的发展历程

1.1.3 Java语言的优点

1.2 Java平台与开发环境

1.2.1 Java平台与应用领域

1.2.2 JDK、JRE和JVM

1.2.3 Java字节码与平台独立

1.2.4 JDK的下载与安装

1.2.5 Java API文档

1.3 Java程序基本结构

1.3.1 Java程序开发步骤

1.3.2 第一个程序分析

1.4 程序文档风格和注释

1.4.1 一致的缩进和空白

1.4.2 块的风格

1.4.3 Java程序注释

1.5 Eclipse集成开发环境

1.6 小结

编程练习

第2章 Java语言基础

2.1 简单程序的开发

2.1.1 从键盘读取数据

2.1.2 变量与赋值

2.1.3 Java标识符

2.1.4 Java关键字

2.2 数据类型

2.2.1 数据类型概述

2.2.2 字面值和常量

2.2.3 整数类型

2.2.4 浮点类型

2.2.5 字符类型

2.2.6 布尔类型

2.2.7 字符串类型

2.3 运算符

2.3.1 算术运算符

2.3.2 关系运算符

2.3.3 逻辑运算符

2.3.4 赋值运算符

2.3.5 位运算符

2.3.6 运算符的优先级和结合性

2.4 数据类型转换

2.4.1 自动类型转换

2.4.2 强制类型转换

2.4.3 表达式中类型自动提升

2.5 小结

编程练习

第3章 选择与循环

3.1 选择

3.1.1 单分支if语句

3.1.2 双分支if-else语句

3.1.3 嵌套的if语句和多分支的if-else语句

3.1.4 条件运算符

3.1.5 switch语句结构

3.2 循环

3.2.1 while循环

3.2.2 do-while循环

3.2.3 for循环

3.2.4 循环的嵌套

3.2.5 break语句和continue语句

3.3 示例学习

3.3.1 任意抽取一张牌

3.3.2 求最大公约数

3.3.3 打印输出若干素数

3.4 小结

编程练习

第4章 类和对象

4.1 面向对象概述

4.1.1 OOP的产生

4.1.2 面向对象的基本概念

4.1.3 面向对象基本特征

4.1.4 OOP的优势

4.2 为对象定义类

4.2.1 类的定义

4.2.2 对象的使用

4.2.3 理解栈与堆

4.2.4 用UML图表示类

4.3 方法设计

4.3.1 如何设计方法

4.3.2 方法的调用

4.3.3 方法重载

4.3.4 构造方法

4.3.5 this关键字的使用

4.3.6 方法参数的传递

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 Java编译单元

4.7 小结

编程练习

第5章 数 组

5.1 创建和使用数组

5.1.1 数组定义

5.1.2 增强的for循环

5.1.3 数组元素的复制

5.1.4 数组参数与返回值

5.1.5 可变参数的方法

5.1.6 实例:随机抽取4张牌

5.1.7 实例:一个整数栈类

5.2 Arrays类

5.2.1 数组的排序

5.2.2 元素的查找

5.2.3 数组元素的复制

5.2.4 填充数组元素

5.2.5 数组的比较

5.3 二维数组

5.3.1 二维数组定义

5.3.2 数组元素的使用

5.3.3 数组初始化器

5.3.4 实例:矩阵乘法

5.3.5 不规则二维数组

5.4 小结

编程练习

第6章 字符串

6.1 String类

6.1.1 创建String类对象

6.1.2 字符串基本操作

6.1.3 字符串查找

6.1.4 字符串转换为数组

6.1.5 字符串比较

6.1.6 字符串的拆分与组合

6.1.7 String对象的不变性

6.1.8 命令行参数

6.2 格式化输出

6.3 StringBuilder类和StringBuffer类

6.3.1 创建StringBuilder对象

6.3.2 StringBuilder的访问和修改

6.3.3 运算符“+”的重载

6.4 小结

编程练习

第7章 继承与多态

7.1 类的继承

7.1.1 类继承的实现

7.1.2 方法覆盖

7.1.3 super关键字

7.1.4 调用父类的构造方法

7.2 封装性与访问修饰符

7.2.1 类的访问权限

7.2.2 类成员的访问权限

7.3 防止类扩展和方法覆盖

7.3.1 final修饰类

7.3.2 final修饰方法

7.3.3 final修饰变量

7.4 抽象类

7.5 对象转换与多态

7.5.1 对象转换

7.5.2 instanceof运算符

7.5.3 多态与动态绑定

7.6 小结

编程练习

第8章 Java常用核心类

8.1 Object:终极父类

8.1.1 toString()方法

8.1.2 equals()方法

8.1.3 hashCode()方法

8.1.4 clone()方法

8.1.5 finalize()方法

8.2 Math类

8.3 基本类型包装类

8.3.1 Character类

8.3.2 Boolean类

8.3.3 创建数值类对象

8.3.4 数值类的常量

8.3.5 自动装箱与自动拆箱

8.3.6 字符串转换为基本类型

8.3.7 BigInteger和BigDecimal类

8.4 日期-时间API

8.4.1 本地日期类LocalDate

8.4.2 本地时间类LocalTime

8.4.3 本地日期时间类LocalDateTime

8.4.4 Instant类、Duration类和Period类

8.4.5 其他常用类

8.4.6 日期时间解析和格式化

8.5 小结

编程练习

第9章 内部类、枚举和注解

9.1 内部类

9.1.1 成员内部类

9.1.2 局部内部类

9.1.3 匿名内部类

9.1.4 静态内部类

9.2 枚举类型

9.2.1 枚举类型的定义

9.2.2 枚举类型的方法

9.2.3 枚举在switch中的应用

9.2.4 枚举类型的构造方法

9.3 注解类型

9.3.1 注解概述

9.3.2 标准注解

9.3.3 定义注解类型

9.3.4 标准元注解

9.4 小结

编程练习

第10章 接口与Lambda表达式

10.1 接口

10.1.1 接口定义

10.1.2 接口的实现

10.1.3 接口的继承

10.1.4 接口类型的使用

10.1.5 常量

10.2 静态方法和默认方法

10.2.1 静态方法

10.2.2 默认方法

10.2.3 解决默认方法冲突

10.3 接口示例

10.3.1 Comparable接口

10.3.2 Comparator接口

10.4 Lambda表达式

10.4.1 Lambda表达式简介

10.4.2 函数式接口

10.4.3 Lambda表达式的语法

10.4.4 预定义的函数式接口

10.4.5 方法引用与构造方法引用

10.5 小结

编程练习

第11章 泛型与集合

11.1 泛型介绍

11.1.1 泛型类型

11.1.2 泛型方法

11.1.3 通配符(?)的使用

11.1.4 有界类型参数

11.1.5 类型擦除

11.2 集合框架

11.3 List接口及实现类

11.3.1 List的操作

11.3.2 ArrayList类

11.3.3 遍历集合元素

11.3.4 数组转换为List对象

11.3.5 Vector类和Stack类

11.4 Set接口及实现类

11.4.1 HashSet类

11.4.2 用Set对象实现集合运算

11.4.3 TreeSet类

11.4.4 对象顺序

11.5 Queue接口及实现类

11.5.1 Queue接口和Deque接口

11.5.2 ArrayDeque类和LinkedList类

11.5.3 集合转换

11.6 Map接口及实现类

11.6.1 Map接口

11.6.2 Map接口的实现类

11.7 Collections类

11.8 Stream API

11.8.1 流概述

11.8.2 创建与获得流

11.8.3 连接流和限制流

11.8.4 过滤流

11.8.5 流转换

11.8.6 流规约

11.8.7 收集结果

11.8.8 基本类型流

11.8.9 并行流

11.9 小结

编程练习

第12章 异常处理

12.1 异常与异常类

12.1.1 异常的概念

12.1.2 异常类

12.2 异常处理

12.2.1 异常的抛出与捕获

12.2.2 try-catch-finally语句

12.2.3 用catch捕获多个异常

12.2.4 声明方法抛出异常

12.2.5 用throw语句抛出异常

12.2.6 try-with-resources语句

12.3 自定义异常类

12.4 断言

12.4.1 使用断言

12.4.2 开启和关闭断言

12.4.3 何时使用断言

12.4.4 断言示例

12.5 小结

编程练习

第13章 输入输出

13.1 二进制I/O流

13.1.1 File类应用

13.1.2 文本I/O与二进制I/O

13.1.3 InputStream类和OutputStream类

13.1.4 常用二进制I/O流

13.1.5 标准输入输出流

13.2 文本I/O流

13.2.1 Reader类和Writer类

13.2.2 FileReader类和FileWriter类

13.2.3 BufferedReader类和BufferedWriter类

13.2.4 PrintWriter类

13.2.5 使用Scanner对象

13.3 对象序列化

13.3.1 对象序列化与对象流

13.3.2 向ObjectOutputStream中写入对象

13.3.3 从ObjectInputStream中读出对象

13.3.4 序列化数组

13.4 NIO和NIO.2

13.4.1 文件系统和路径

13.4.2 FileSystem类

13.4.3 Path对象

13.5 Files类操作

13.5.1 创建和删除目录及文件

13.5.2 文件属性操作

13.5.3 文件和目录的复制与移动

13.5.4 获取目录的对象

13.5.5 小文件的读写

13.5.6 使用Files类创建流对象

13.6 小结

编程练习

第14章 JavaFX基础

14.1 JavaFX概述

14.1.1 Java GUI编程简史

14.1.2 JavaFX基本概念

14.1.3 添加JavaFX软件包

14.2 JavaFX程序基本结构

14.2.1 舞台和场景

14.2.2 场景图和节点

14.2.3 Application类生命周期方法

14.2.4 JavaFX程序启动

14.3 JavaFX属性与绑定

14.3.1 JavaFX属性

14.3.2 属性绑定

14.4 JavaFX界面布局

14.4.1 JavaFX坐标系

14.4.2 Pane面板

14.4.3 HBox面板

14.4.4 VBox面板

14.4.5 BorderPane面板

14.4.6 FlowPane面板

14.4.7 GridPane面板

14.4.8 StackPane面板

14.4.9 AnchorPane面板

14.4.10 使用CSS设置控件样式

14.5 Color和Font类

14.5.1 Color类

14.5.2 Font类

14.6 JavaFX形状

14.6.1 Line类

14.6.2 Rectangle类

14.6.3 Circle类

14.6.4 Ellipse类

14.6.5 Arc类

14.6.6 Polygon类

14.6.7 Text类

14.7 Image和ImageView类

14.8 特效实现

14.8.1 阴影效果

14.8.2 模糊效果

14.8.3 倒影效果

14.8.4 发光效果

14.9 小结

编程练习

第15章 事件处理与常用控件

15.1 事件处理

15.1.1 事件处理模型

15.1.2 事件类和事件类型

15.1.3 使用事件处理器

15.1.4 动作事件

15.1.5 鼠标事件

15.1.6 键盘事件

15.1.7 为属性添加监听器

15.2 常用控件

15.2.1 Label类

15.2.2 Button类

15.2.3 TextField类和PasswordField类

15.2.4 TextArea类

15.2.5 CheckBox类

15.2.6 RadioButton类

15.2.7 ComboBox类

15.2.8 Slider类

15.2.9 菜单设计

15.2.10 FileChooser类

15.3 音频和视频

15.4 动画

15.4.1 过渡动画

15.4.2 淡出效果

15.4.3 移动效果

15.4.4 缩放效果

15.4.5 旋转效果

15.4.6 时间轴动画

15.5 小结

编程练习

第16章 JDBC数据库编程

16.1 数据库系统简介

16.1.1 关系数据库简述

16.1.2 数据库语言SQL

16.2 MySQL数据库

16.2.1 MySQL的下载与安装

16.2.2 使用MySQL命令行工具

16.2.3 使用Navicat操作数据库

16.3 JDBC体系结构

16.3.1 JDBC访问数据库

16.3.2 JDBC API介绍

16.4 数据库访问步骤

16.4.1 加载驱动程序

16.4.2 建立连接对象

16.4.3 创建语句对象

16.4.4 ResultSet对象

16.4.5 关闭有关对象

16.5 访问MySQL数据库

16.5.1 创建数据库和表

16.5.2 访问MySQL数据库

16.6 使用PreparedStatement对象

16.6.1 创建PreparedStatement对象

16.6.2 带参数的SQL语句

16.7 DAO设计模式

16.8 可滚动和可更新的ResultSet

16.8.1 可滚动的ResultSet

16.8.2 可更新的ResultSet

16.9 小结

编程练习

第17章 并发编程基础

17.1 Java多线程简介

17.2 创建任务和线程

17.2.1 实现Runnable接口

17.2.2 继承Thread类

17.2.3 主线程

17.3 线程的状态与调度

17.3.1 线程的状态

17.3.2 线程的优先级和调度

17.3.3 控制线程的结束

17.4 线程同步与对象锁

17.4.1 线程冲突与原子操作

17.4.2 方法同步

17.4.3 块同步

17.5 线程协调

17.5.1 不正确的设计

17.5.2 监视器模型

17.6 并发工具

17.6.1 原子变量

17.6.2 Executor和ExecutorService

17.6.3 Callable和Future

17.6.4 使用Lock锁定对象

17.7 小结

编程练习

第18章 Java网络编程

18.1 网络概述

18.1.1 网络分层与协议

18.1.2 客户/服务器结构

18.1.3 IP地址和域名

18.1.4 端口号与套接字

18.2 Java套接字通信

18.2.1 套接字API

18.2.2 简单的客户和服务器程序

18.2.3 服务多个客户

18.3 数据报通信

18.3.1 数据报通信概述

18.3.2 DatagramSocket类和DatagramPacket类

18.3.3 简单的UDP通信例子

18.4 URL类编程

18.4.1 理解HTTP

18.4.2 URL和URL类

18.4.3 URLConnection类

18.5 小结

编程练习

参考文献

Java语言程序设计(第3版)是2018年由清华大学出版社出版,作者沈泽刚。

得书感谢您对《Java语言程序设计(第3版)》关注和支持,如本书内容有不良信息或侵权等情形的,请联系本网站。

购买这本书

你可能喜欢
Java Web程序设计教程 电子书
本书作为JavaWeb程序设计的大学教程,对JavaEE编程技术进行了系统全面的介绍。全书共分14章。首先对Java编程知识做了详细的介绍,包括Java常用工具类、集合框架、JDBC编程技术以及Java对XML编程技术。然后开始对JSP网页编程技术进行较详细的介绍,包括HTML基础、CSS样式表的应用、JavaScript脚本语言以及JSP相关的编程技术(如JSP基础、JavaBean编程、Ser
Java程序设计入门 电子书
Java编程全面指南:基础、面向对象、数据库、界面、网络及实训。
VB语言程序设计教程(第2版) 电子书
本书作者在多年教学经验基础上,并根据学生的认知规律精心组织了本教材内容,并通过大量有现实意义的例题,深入浅出地介绍了VB程序设计的有关概念和编程技巧。书中例题都经过了仔细的调试,并配有大量上机实习题。
汇编语言程序设计(第2版) 电子书
本书主要介绍基于80x86的汇编语言程序设计方法和技术。
Java Web程序设计任务教程 电子书
本书从初学者的角度出发,深刻且通俗地揭示了JavaWeb开发内幕。全书共15章,详细讲解了网页开发的基础知识和JavaWeb开发的重要知识,其中网页开发基础知识包括HTML技术、CSS技术和JavaScript技术,而JavaWeb的进阶知识包括Servlet技术、会话技术、JSP技术,以及JDBC和数据库连接池等技术。本书加入了真实的电商项目,揭示了项目开发的真实内幕,可以让学习者切身感受到项目