书刊介绍
《Java经典入门指南》内容简介
本书基于新版的Java 11编写,全面系统地介绍Java程序员必须掌握的核心基础知识,这些内容融合在三大主题中——Java语言基础、面向对象编程以及Java核心类。其中,Java语言基础包括数据类型和运算符、控制结构、数组、类和对象、异常处理、枚举和注解等;面向对象包括封装性、继承性、多态性、口与抽象类、泛型与集合、多线程与并发编程等;Java核心类包括日期时间API、输/输出、JavaFX图形界面、Lambda表达式和Stream的使用、数据库和网络编程。本书还介绍了安全性和Java Web编程基础的相关知识。本书是为专业级Java程序员造的理想教程,也可作为高等院校计算机相关专业“面向对象编程”和“Java语言程序设计”等课程的教学用书。本书基于新版的Java 11编写,全面系统地介绍Java程序员必须掌握的核心基础知识,这些内容融合在三大主题中——Java语言基础、面向对象编程以及Java核心类。其中,Java语言基础包括数据类型和运算符、控制结构、数组、类和对象、异常处理、枚举和注解等;面向对象包括封装性、继承性、多态性、口与抽象类、泛型与集合、多线程与并发编程等;Java核心类包括日期时间API、输/输出、JavaFX图形界面、Lambda表达式和Stream的使用、数据库和网络编程。本书还介绍了安全性和Java Web编程基础的相关知识。本书是为专业级Java程序员造的理想教程,也可作为高等院校计算机相关专业“面向对象编程”和“Java语言程序设计”等课程的教学用书。
Budi Kurniawan 是Brainy Software的高级发人员,曾为世界各地的多家机构担任顾问。他著有How Tomcat Works、Servlet and JSP:A Tutorial、Struts 2 Design and Programming等多部图书。他以清晰的写作风格而闻名,他的写作基于20年的软件架构师和软件发经验。他的Java教程最近被德国斯图加特HDM计算机科学教学团队选中,作为大学的主要教材。作品目录
版权声明
内容提要
译者序
作者简介
前
言
资源与支持
第1章:新手起步
1.1、下载和安装JDK
1.2、第一个Java程序
1.3、Java编码规范
1.4、集成开发环境
1.5、JShell
1.6、小结
习题
第2章:语言基础
2.1、ASCII和Unicode
2.2、分隔符
2.3、基本类型
2.4、变量
2.5、局部变量类型推断
2.6、常量
2.7、字面值
2.8、基本类型转换
2.9、运算符
2.10、注释
2.11、小结
习题
第3章:语句
3.1、概述
3.2、if语句
3.3、while语句
3.4、do-while语句
3.5、for语句
3.6、break语句
3.7、continue语句
3.8、switch语句
3.9、小结
习题
第4章:对象和类
4.1、什么是Java对象
4.2、Java类
4.3、创建对象
4.4、null关键字
4.5、为对象分配内存
4.6、Java包
4.7、封装与访问控制
4.8、this关键字
4.9、使用其他类
4.10、final变量
4.11、静态成员
4.12、静态final变量
4.13、静态导入
4.14、变量作用域
4.15、方法重载
4.16、静态工厂方法
4.17、按值还是按引用传递
4.18、加载、链接和初始化
4.19、对象创建初始化
4.20、垃圾回收器
4.21、创建对象的其他方法
4.22、小结
习题
第5章:核心类
5.1、java.lang.Object
5.2、java.lang.String
5.3、java.lang.StringBuffer和java.lang.StringBuilder
5.4、基本类型包装类
5.5、java.lang.Class
5.6、java.lang.System
5.7、java.util.Scanner
5.8、小结
习题
第6章:数组
6.1、概述
6.2、迭代数组
6.3、java.util.Arrays类
6.4、修改数组大小
6.5、查找数组
6.6、将String数组传递给main
6.7、多维数组
6.8、小结
习题
第7章:继承
7.1、概述
7.2、可访问性
7.3、方法覆盖
7.4、调用超类的构造方法
7.5、调用超类的隐藏成员
7.6、类型转换
7.7、final类
7.8、instanceof运算符
7.9、小结
习题
第8章:错误处理
8.1、概述
8.2、捕获异常
8.3、不带catch的try
8.4、捕获多个异常
8.5、try-with-resources语句
8.6、java.lang.Exception类
8.7、从方法抛出异常
8.8、用户自定义异常
8.9、异常处理说明
8.10、小结
习题
第9章:处理数字
9.1、装箱与拆箱
9.2、数字解析
9.3、数字格式化
9.4、用java.text.NumberFormat解析数字
9.5、java.lang.Math类
9.6、使用货币值
9.7、生成随机数
9.8、小结
习题
第10章:接口和抽象类
10.1、接口的概念
10.2、从技术角度看接口
10.3、接口中的实现
10.4、基类
10.5、抽象类
10.6、抽象类说明
10.7、小结
习题
第11章:多态
11.1、概述
11.2、多态实战
11.3、多态与反射
11.4、小结
习题
第12章:枚举
12.1、概述
12.2、类中的枚举
12.3、java.lang.Enum类
12.4、迭代枚举值
12.5、在switch中使用枚举
12.6、枚举成员
12.7、小结
习题
第13章:处理日期和时间
13.1、概述
13.2、Instant类
13.3、LocalDate
13.4、Period
13.5、LocalDateTime
13.6、时区
13.7、ZonedDateTime
13.8、Duration
13.9、格式化日期-时间
13.10、解析日期-时间
13.11、旧的日期和时间API
13.12、小结
习题
第14章:集合框架
14.1、集合框架概述
14.2、Collection接口
14.3、List和ArrayList
14.4、用Iterator和for迭代集合
14.5、Set和HashSet
14.6、Queue和LinkedList
14.7、集合转换
14.8、Map和HashMap
14.9、对象比较和排序
14.10、小结
习题
第15章:泛型
15.1、没有泛型的时代
15.2、泛型类型
15.3、使用没有类型参数的泛型类型
15.4、使用“?”通配符
15.5、在方法中使用有界通配符
15.6、泛型方法
15.7、编写泛型类型
15.8、小结
习题
第16章:输入/输出
16.1、File类
16.2、文件系统和路径
16.3、文件和目录的处理及操作
16.4、输入流/输出流
16.5、读二进制数据
16.6、写入二进制数据
16.7、写入文本(字符)
16.8、读取文本(字符)
16.9、用PrintStream记录日志
16.10、随机访问文件
16.11、对象序列化
16.12、小结
习题
第17章:注解
17.1、概述
17.2、标准注解
17.3、一般注解
17.4、标准元注解
17.5、自定义注解类型
17.6、小结
习题
第18章:嵌套类和内部类
18.1、嵌套类的概述
18.2、静态嵌套类
18.3、成员内部类
18.4、局部内部类
18.5、匿名内部类
18.6、嵌套类和内部类的幕后
18.7、小结
习题
第19章:Lambda表达式
19.1、为何使用Lambda表达式
19.2、函数式接口
19.3、Lambda表达式语法
19.4、预定义函数式接口
19.5、方法引用
19.6、Optional与类似的类
19.7、小结
习题
第20章:使用Stream
20.1、概述
20.2、创建和获得流
20.3、连接流
20.4、过滤
20.5、映射
20.6、归约
20.7、可变归约
20.8、并行流
20.9、小结
习题
第21章:Java数据库连接
21.1、JDBC简介
21.2、数据访问的5个步骤
21.3、综合应用
21.4、使用DAO模式
21.5、读取元数据
21.6、小结
习题
第22章:JavaFX入门
22.1、概述
22.2、第一个JavaFX程序
22.3、Application、Stage和Scene类
22.4、UI组件
22.5、控件
22.6、区域
22.7、事件驱动编程
22.8、使用CSS样式
22.9、小结
习题
第23章:JavaFX与FXML
23.1、概述
23.2、一个基于FXML的简单应用
23.3、FXML的事件处理
23.4、小结
习题
第24章:Java线程
24.1、Java线程简介
24.2、创建线程
24.3、使用多线程
24.4、线程优先级
24.5、停止线程
24.6、同步
24.7、可见性
24.8、join方法
24.9、线程协调
24.10、使用Timer
24.11、小结
习题
第25章:并发工具
25.1、原子变量
25.2、Executor和ExecutorService
25.3、命名线程
25.4、Callable和Future
25.5、JavaFX任务
25.6、锁
25.7、小结
习题
第26章:Java网络
26.1、网络概述
26.2、超文本传输协议(HTTP)
26.3、HttpClient
API
26.4、java.net.Socket
26.5、java.net.ServerSocket
26.6、创建一个Web服务器
26.7、小结
习题
第27章:安全
27.1、Java安全概述
27.2、使用安全管理器
27.3、策略文件
27.4、权限
27.5、安全编程
27.6、加密概述
27.7、创建证书
27.8、KeyTool程序
27.9、JarSigner工具
27.10、Java加密API
27.11、小结
习题
第28章:Java
Web应用程序
28.1、Servlet应用程序架构
28.2、Servlet
API概述
28.3、Servlet
28.4、编写基本的Servlet应用程序
28.5、ServletRequest
28.6、ServletResponse
28.7、ServletConfig
28.8、ServletContext
28.9、GenericServlet
28.10、HTTP
Servlet
28.11、使用部署描述符
28.12、小结
习题
第29章:JavaServer
Pages
29.1、JSP概述
29.2、jspInit、jspDestroy及其他方法
29.3、隐含对象
29.4、JSP语法元素
29.5、处理错误
29.6、小结
习题
第30章:模块
30.1、概述
30.2、Java标准模块
30.3、创建模块应用程序
30.4、创建自包含的应用程序包
30.5、创建安装程序
30.6、小结
习题
附录A
javac
A.1、选项
A.2、命令行参数文件
附录B
java
B.1、标准选项
B.2、非标准选项
附录C
jar
C.1、语法
C.2、选项
C.3、示例
C.4、设置应用程序入口点
附录D
Eclipse
D.1、下载和安装
D.2、添加JRE
D.3、创建Java项目
D.4、创建一个类
D.5、运行类
D.6、添加类库
D.7、调试代码
D.8、常用快捷键