Java从入门到精通(精粹版)
作者:张玉宏
出版社:人民邮电出版社
出版时间:2018-08-01
ISBN:9787115485472
定价:¥79.80
第0章 Java学习指南
0.1 Java为什么重要002
0.2 Java简史—带给我们的一点思考003
0.3 Java应用领域和前景008
0.4 Java学习路线图009
第1章 Java开发环境搭建
1.1 Java开发环境013
1.2 安装Java开发工具箱013
1.2.1 下载JDK013
1.2.2 安装JDK016
1.3 Java环境变量的配置017
1.3.1 理解环境变量017
1.3.2 JDK中的3个环境变量018
1.4 享受安装成果—开发第一个Java程序024
1.5 Eclipse的使用025
1.5.1 Eclipse概述025
1.5.2 创建Java项目026
1.5.3 创建Java类文件028
1.5.4 运行Java程序029
1.6 高手点拨030
1.7 实战练习030
第2章 Java程序要素概览
2.1 一个简单的例子032
2.2 认识Java程序033
2.2.1 Java程序的框架034
2.2.2 标识符035
2.2.3 关键字035
2.2.4 注释035
2.2.5 变量036
2.2.6 数据类型037
2.2.7 运算符和表达式038
2.2.8 类039
2.3 程序的检测039
2.3.1 语法错误039
2.3.2 语义错误040
2.4 提高程序的可读性041
2.5 高手点拨042
2.6 实战练习042
第3章 Java编程基础—常量、变量与数据类型
3.1 常量与变量044
3.1.1 常量的声明与使用044
3.1.2 变量的声明与使用045
3.2 基本数据类型049
3.2.1 数据类型的意义049
3.2.2 整数类型050
3.2.3 浮点类型 053
3.2.4 字符类型054
3.2.5 布尔类型056
3.3 高手点拨057
3.4 实战练习058
第4章 编程元素详解—运算符、表达式、语句与流程控制
4.1 运算符060
4.1.1 赋值运算符060
4.1.2 一元运算符060
4.1.3 算术运算符062
4.1.4 逻辑运算符063
4.1.5 位运算符066
4.1.6 三元运算符067
4.1.7 关系运算符与if语句068
4.1.8 递增与递减运算符069
4.2 表达式070
4.2.1 算术表达式与关系表达式071
4.2.2 逻辑表达式与赋值表达式071
4.2.3 表达式的类型转换072
4.3 语句074
4.3.1 语句中的空格074
4.3.2 空语句075
4.3.3 声明语句与赋值语句075
4.4 程序的控制逻辑076
4.4.1 顺序结构076
4.4.2 选择结构076
4.4.3 循环结构077
4.5 选择结构077
4.5.1 if语句077
4.5.2 if…else语句080
4.5.3 if…else if…else语句082
4.5.4 多重选择──switch语句083
4.6 循环结构085
4.6.1 while循环085
4.6.2 do…while循环086
4.6.3 for循环088
4.7 循环的跳转090
4.7.1 break语句090
4.7.2 continue语句092
4.7.3 return语句095
4.8 高手点拨096
4.9 实战练习096
第5章 数组与枚举
5.1 理解数组098
5.2 一维数组100
5.2.1 一维数组的声明与内存的分配100
5.2.2 数组中元素的表示方法101
5.2.3 数组元素的使用102
5.3 二维数组104
5.3.1 二维数组的声明与赋值105
5.3.2 二维数组元素的引用及访问106
5.4 枚举简介107
5.5 Java中的枚举107
5.5.1 常见的枚举定义方法107
5.5.2 在程序中使用枚举108
5.5.3 在switch语句中使用枚举109
5.6 高手点拨110
5.7 实战练习110
第6章 类和对象
6.1 理解面向对象程序设计112
6.1.1 面向对象程序设计简介112
6.1.2 面向对象程序设计的基本特征113
6.2 面向对象的基本概念113
6.2.1 类113
6.2.2 对象113
6.2.3 类和对象的关系114
6.3 类的声明与定义115
6.3.1 类的声明115
6.3.2 类的定义116
6.4 类的属性117
6.4.1 属性的定义117
6.4.2 属性的使用118
6.5 对象的声明与使用120
6.5.1 对象的声明120
6.5.2 对象的使用121
6.5.3 匿名对象123
6.6 高手点拨124
6.7 实战练习124
第7章 重复调用的代码块—方法
7.1 方法的基本定义126
7.2 方法的使用128
7.3 方法中的形参与实参129
7.4 方法的重载130
7.5 构造方法133
7.5.1 构造方法的概念133
7.5.2 构造方法的重载135
7.5.3 构造方法的私有化139
7.6 在方法内部调用方法142
7.7 static方法143
7.7.1 自定义static方法143
7.7.2 static主方法(main)145
7.8 高手点拨146
7.9 实战练习146
第8章 类的封装、继承与多态
8.1 封装149
8.1.1 Java访问权限修饰符149
8.1.2 封装问题引例149
8.1.3 类的封装实例150
8.2 继承156
8.2.1 Java中的继承156
8.2.2 继承问题的引入157
8.2.3 继承实现代码复用158
8.2.4 继承的限制160
8.3 覆写163
8.3.1 属性的覆盖163
8.3.2 方法的覆写164
8.4 多态167
8.4.1 多态的基本概念167
8.4.2 方法多态性169
8.4.3 对象多态性170
8.5 高手点拨172
8.6 实战练习172
第9章 抽象类与接口
9.1 抽象类174
9.1.1 抽象类的定义174
9.1.2 抽象类的使用175
9.2 接口178
9.2.1 接口的基本概念178
9.2.2 使用接口的原则179
9.3 高手点拨186
9.4 实战练习186
第10章 Java常用类库
10.1 类库的概念188
10.2 基本数据类型的包装类188
10.2.1 装箱与拆箱189
10.2.2 基本数据类型与字符串的转换191
10.3 String类193
10.3.1 字符串类的声明193
10.3.2 String类中常用的方法194
10.4 Math与Random类197
10.4.1 Math类的使用197
10.4.2 Random类的使用198
10.5 高手点拨200
10.6 实战练习200
第11章 异常的捕获与处理
11.1 异常的基本概念202
11.1.1 简单的异常范例202
11.1.2 异常的处理203
11.2 异常类的处理流程208
11.3 throws关键字209
11.4 throw关键字210
11.5 异常处理的标准格式211
11.6 高手点拨212
11.7 实战练习212
第12章 多线程
12.1 感知多线程215
12.2 体验多线程215
12.2.1 通过继承Thread类实现多线程216
12.2.2 通过实现Runnable接口实现多线程218
12.2.3 两种多线程实现机制的比较220
12.2.4 Java 8 中运行线程的新方法224
12.3 线程的状态225
12.4 线程操作的一些方法229
12.4.1 取得和设置线程的名称229
12.4.2 判断线程是否启动232
12.4.3 守护线程与setDaemon方法233
12.4.4 线程的联合234
12.5 高手点拨236
12.6 实战练习236
第13章 文件I/O操作
13.1 输入/输出的重要性238
13.2 读写文本文件238
13.2.1 File文件类238
13.2.2 文本文件的操作240
13.2.3 字符编码问题244
13.3 文本的输入和输出247
13.3.1 读入文本单词247
13.3.2 读入单个字符248
13.3.3 判断字符分类的方法248
13.3.4 读入一行文本249
13.3.5 将字符转换为数字250
13.4 命令行参数的使用251
13.4.1 System类对I/O的支持251
13.4.2 Java命令行参数解析252
13.5 高手点拨255
13.6 实战练习256
第14章 GUI编程
14.1 GUI概述258
14.2 GUI与AWT258
14.3 AWT容器259
14.3.1 Frame窗口259
14.3.2 Panel面板263
14.3.3 布局管理器264
14.4 AWT常用组件269
14.4.1 按钮与标签组件270
14.4.2 文本域272
14.4.3 图形控件274
14.5 事件处理275
14.5.1 事件处理的流程275
14.5.2 常用的事件276
14.5.3 事件处理小案例—会动的乌龟281
14.6 Swing概述284
14.7 Swing的基本组件286
14.7.1 JTable表格286
14.7.2 JComboBox下拉列表框288
14.7.3 组件的常用方法289
14.8 Swing的应用小案例—简易学籍管理系统290
14.9 高手点拨293
14.10 实战练习294
第15章 数据库编程
15.1 数据库概述296
15.2 Java数据库连接利器—JDBC296
15.3 轻量级数据库—SQLite296
15.3.1 SQLite的准备工作296
15.3.2 用Java连接SQLite299
15.3.3 创建数据表300
15.3.4 更新数据表302
15.3.5 查询数据表307
15.4 SQLite实战—简易学生信息管理系统311
15.4.1 基本数据结构312
15.4.2 数据库操作有关工具类314
15.4.3 主界面的构造318
15.4.4 用于输入新数据的对话框实现324
15.5 MySQL数据库330
15.5.1 MySQL数据库的基本命令330
15.5.2 在Java中使用MySQL数据库333
15.6 高手点拨338
15.7 实战练习338
第16章 Java Web初步
16.1 JSP概述340
16.2 JSP的运行环境340
16.2.1 安装Tomcat340
16.2.2 配置虚拟目录343
16.2.3 编写第一个JSP程序345
16.2.4 Tomcat执行流程346
16.3 基础语法347
16.3.1 显式注释与隐式注释347
16.3.2 代码段348
16.3.3 Page指令350
16.3.4 包含指令352
16.3.5 跳转指令356
16.4 内置对象357
16.4.1 request对象358
16.4.2 response对象361
16.5 Servlet367
16.5.1 Servlet简介367
16.5.2 第一个Servlet程序368
16.6 高手点拨372
16.7 实战练习372
第17章 常用设计框架
17.1 框架的内涵374
17.2 Struts 开发基础374
17.2.1 Struts简介374
17.2.2 MVC的基本概念375
17.2.3 下载Struts 2 类库375
17.2.4 从Struts 2的角度理解MVC 376
17.2.5 第一个Struts 2 实例377
17.2.6 运行测试StrutsDemo工程386
17.2.7 小节387
17.3 Spring快速上手387
17.3.1 Spring基本知识 387
17.3.2 Spring开发准备 388
17.3.3 Spring框架配置 388
17.3.4 Spring开发实例 392
17.4 Hibernate入门396
17.4.1 Hibernate开发基础397
17.4.2 Hibernate开发准备397
17.4.3 Hibernate开发实例400
17.5 高手点拨416
17.6 实战练习416
第18章 Android编程基础
18.1 Android简介418
18.1.1 Android系统架构418
18.1.2 Android应用开发特色418
18.2 搭建开发环境419
18.2.1 准备所需要的软件419
18.2.2 搭建开发环境419
18.3 创建第一个Android项目422
18.3.1 创建HelloWorld项目422
18.3.2 运行HelloWorld项目424
18.3.3 解析第一个Android程序425
18.4 详解基本布局428
18.4.1 线性布局428
18.4.2 相对布局432
18.4.3 帧布局436
18.5 常见控件的使用方法437
18.5.1 TextView437
18.5.2 EditText438
18.5.3 Button440
18.5.4 ImageView443
18.6 Activity详细介绍444
18.6.1 Activity生命周期444
18.6.2 Activity状态444
18.6.3 Activity启动模式445
18.7 高手点拨446
18.8 实战练习446
第19章 Android项目实战—智能电话回拨系统
19.1 系统概述449
19.1.1 背景介绍449
19.1.2 运行程序449
19.1.3 系统需求分析450
19.1.4 详细功能设计450
19.2 系统实现451
19.2.1 主界面451
19.2.2 修改密码 452
19.2.3 意见反馈455
19.3 项目功能用到的知识点讲解460
19.3.1 读取通讯录460
19.3.2 读取联系人头像463
19.3.3 读取短信464
19.4 高手点拨466
19.5 实战练习466
第20章 Java Web项目实战—我的饭票网
20.1 系统分析468
20.2 系统设计468
20.3 数据库设计469
20.3.1 功能分析469
20.3.2 基本表设计469
20.4 用户注册模块设计473
20.4.1 用户注册模块概述473
20.4.2 与用户注册有关的数据库连接及操作类473
20.4.3 用户注册界面设计480
20.4.4 用户注册事件处理页面483
20.5 用户登录模块设计484
20.5.1 用户登录模块概述484
20.5.2 与用户登录有关的数据库连接及操作类484
20.5.3 用户登录界面设计486
20.5.4 用户登录验证处理页面488
20.6 用户主页面模块设计490
20.6.1 用户主页面模块概述490
20.6.2 与用户主页面有关的数据库连接及操作类490
20.6.3 用户主页面界面设计495
20.7 高手点拨498
20.8 实战练习498
第21章 大数据项目实战—Hadoop下的数据处理
21.1 认识Hadoop500
21.2 理解MapReduce编程范式501
21.3 第一个Hadoop案例—WordCount代码详解501
21.3.1 WordCount基本流程502
21.3.2 WordCount代码详解503
21.3.3 运行WordCount506
21.4 面向K-Means聚类算法的Hadoop实践510
21.4.1 K-Means聚类算法简介510
21.4.2 基于MapReduce的K-Means算法实现513
21.4.3 编写K-Means513
21.4.4 在Hadoop集群运行KMeans538
21.5 高手点拨542
21.6 实战练习542
附录:全分布式Hadoop集群的构建
安装CentOS 7543
安装Java并配置环境变量544
安装Hadoop546
下载Hadoop包546
安装Hadoop547
Hadoop的运行模式547
Hadoop集群构建548
设置静态IP地址548
修改hosts文件550
安装和配置SSH服务550
安装SSH551
SSH免密码登录551
虚拟机的配置文件同步553
全分布模式下配置Hadoop553
配置Hadoop环境变量553
配置hadoop-env.sh554
配置HDFS的主节点(core-site.xml)555
配置slaves556
配置yarn-site.xml557
配置mapred-site.xml558
验证全分布模式559
默认配置文件所在位置560
关闭Hadoop560