《Java 从入门到精通 第4版》PDF下载

  • 购买积分:17 如何计算积分?
  • 作  者:本书编委会
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2016
  • ISBN:9787302444543
  • 页数:564 页
图书介绍:

第1篇 基础知识 2

第1章 初识Java 2

1.1 Java简介 3

1.1.1 什么是Java语言 3

1.1.2 Java的应用领域 3

1.1.3 Java的版本 4

1.1.4 怎样学好Java 5

1.1.5 Java API文档 6

1.2 Java语言的特性 7

1.2.1 简单 7

1.2.2 面向对象 7

1.2.3 分布性 7

1.2.4 可移植性 7

1.2.5 解释型 8

1.2.6 安全性 8

1.2.7 健壮性 8

1.2.8 多线程 8

1.2.9 高性能 8

1.2.10 动态 8

1.3 搭建Java环境 9

1.3.1 JDK下载 9

1.3.2 Windows系统的JDK环境 11

1.4 第一个Java程序 14

1.5 小结 15

1.6 实践与练习 16

第2章 熟悉Eclipse开发工具 17

2.1 熟悉Eclipse 18

2.1.1 Eclipse简介 18

2.1.2 下载Eclipse 18

2.1.3 安装Eclipse的中文语言包 20

2.1.4 Eclipse的配置与启动 23

2.1.5 Eclipse工作台 25

2.1.6 透视图与视图 25

2.1.7 菜单栏 26

2.1.8 工具栏 29

2.1.9 “包资源管理器”视图 30

2.1.10 “控制台”视图 30

2.2 使用Eclipse 31

2.2.1 创建Java项目 31

2.2.2 创建Java类文件 31

2.2.3 使用编辑器编写程序代码 32

2.2.4 运行Java程序 35

2.3 程序调试 35

2.4 小结 37

2.5 实践与练习 37

第3章 Java语言基础 38

3.1 Java主类结构 39

3.1.1 包声明 39

3.1.2 声明成员变量和局部变量 40

3.1.3 编写主方法 40

3.1.4 导入API类库 40

3.2 基本数据类型 40

3.2.1 整数类型 41

3.2.2 浮点类型 42

3.2.3 字符类型 43

3.2.4 布尔类型 44

3.3 变量与常量 44

3.3.1 标识符和关键字 45

3.3.2 声明变量 45

3.3.3 声明常量 46

3.3.4 变量的有效范围 47

3.4 运算符 48

3.4.1 赋值运算符 49

3.4.2 算术运算符 50

3.4.3 自增和自减运算符 51

3.4.4 比较运算符 51

3.4.5 逻辑运算符 52

3.4.6 位运算符 53

3.4.7 三元运算符 55

3.4.8 运算符优先级 56

3.5 数据类型转换 56

3.5.1 隐式类型转换 57

3.5.2 显式类型转换 58

3.6 代码注释与编码规范 59

3.6.1 代码注释 59

3.6.2 编码规范 60

3.7 小结 61

3.8 实践与练习 61

第4章 流程控制 62

4.1 复合语句 63

4.2 条件语句 64

4.2.1 if条件语句 64

4.2.2 switch多分支语句 68

4.3 循环语句 71

4.3.1 while循环语句 71

4.3.2 do…while循环语句 72

4.3.3 for循环语句 73

4.4 循环控制 75

4.4.1 break语句 75

4.4.2 continue语句 78

4.5 小结 79

4.6 实践与练习 79

第5章 字符串 80

5.1 String类 81

5.1.1 声明字符串 81

5.1.2 创建字符串 81

5.2 连接字符串 82

5.2.1 连接多个字符串 83

5.2.2 连接其他数据类型 83

5.3 获取字符串信息 84

5.3.1 获取字符串长度 85

5.3.2 字符串查找 85

5.3.3 获取指定索引位置的字符 86

5.4 字符串操作 87

5.4.1 获取子字符串 87

5.4.2 去除空格 88

5.4.3 字符串替换 89

5.4.4 判断字符串的开始与结尾 90

5.4.5 判断字符串是否相等 91

5.4.6 按字典顺序比较两个字符串 93

5.4.7 字母大小写转换 94

5.4.8 字符串分割 95

5.5 格式化字符串 96

5.5.1 日期和时间字符串格式化 97

5.5.2 常规类型格式化 100

5.6 使用正则表达式 101

5.7 字符串生成器 103

5.8 小结 105

5.9 实践与练习 105

第6章 数组 106

6.1 数组概述 107

6.2 一维数组的创建及使用 107

6.2.1 创建一维数组 107

6.2.2 初始化一维数组 108

6.2.3 使用一维数组 109

6.3 二维数组的创建及使用 109

6.3.1 二维数组的创建 110

6.3.2 二维数组初始化 111

6.3.3 使用二维数组 111

6.4 数组的基本操作 112

6.4.1 遍历数组 112

6.4.2 填充替换数组元素 113

6.4.3 对数组进行排序 115

6.4.4 复制数组 116

6.4.5 数组查询 117

6.5 数组排序算法 119

6.5.1 冒泡排序 119

6.5.2 直接选择排序 122

6.5.3 反转排序 124

6.6 小结 125

6.7 实践与练习 126

第7章 类和对象 127

7.1 面向对象概述 128

7.1.1 对象 128

7.1.2 类 129

7.1.3 封装 130

7.1.4 继承 130

7.1.5 多态 131

7.2 类 132

7.2.1 成员变量 132

7.2.2 成员方法 133

7.2.3 权限修饰符 133

7.2.4 局部变量 135

7.2.5 局部变量的有效范围 135

7.2.6 this关键字 136

7.3 类的构造方法 137

7.4 静态变量、常量和方法 138

7.5 类的主方法 140

7.6 对象 141

7.6.1 对象的创建 142

7.6.2 访问对象的属性和行为 143

7.6.3 对象的引用 145

7.6.4 对象的比较 146

7.6.5 对象的销毁 147

7.7 小结 148

7.8 实践与练习 148

第8章 包装类 149

8.1 Integer 150

8.2 Boolean 152

8.3 Byte 154

8.4 Character 155

8.5 Double 156

8.6 Number 158

8.7 小结 158

8.8 实践与练习 158

第9章 数字处理类 159

9.1 数字格式化 160

9.2 数学运算 162

9.2.1 Math类 163

9.2.2 常用数学运算方法 163

9.3 随机数 167

9.3.1 Math.random()方法 167

9.3.2 Random类 169

9.4 大数字运算 170

9.4.1 BigInteger 171

9.4.2 BigDecimal 173

9.5 小结 176

9.6 实践与练习 176

第2篇 核心技术 178

第10章 接口、继承与多态 178

10.1 类的继承 179

10.2 Object类 182

10.3 对象类型的转换 184

10.3.1 向上转型 184

10.3.2 向下转型 185

10.4 使用instanceof操作符判断对象类型 186

10.5 方法的重载 188

10.6 多态 191

10.7 抽象类与接口 193

10.7.1 抽象类 193

10.7.2 接口 194

10.8 小结 197

10.9 实践与练习 197

第11章 类的高级特性 198

11.1 Java类包 199

11.1.1 类名冲突 199

11.1.2 完整的类路径 199

11.1.3 创建包 200

11.1.4 导入包 201

11.2 final变量 203

11.3 final方法 206

11.4 final类 207

11.5 内部类 208

11.5.1 成员内部类 208

11.5.2 局部内部类 212

11.5.3 匿名内部类 213

11.5.4 静态内部类 214

11.5.5 内部类的继承 215

11.6 小结 215

11.7 实践与练习 215

第12章 异常处理 216

12.1 异常概述 217

12.2 处理程序异常错误 217

12.2.1 错误 218

12.2.2 捕捉异常 218

12.3 Java常见异常 220

12.4 自定义异常 221

12.5 在方法中抛出异常 222

12.5.1 使用throws关键字抛出异常 222

12.5.2 使用throw关键字抛出异常 223

12.6 运行时异常 225

12.7 异常的使用原则 226

12.8 小结 226

12.9 实践与练习 226

第13章 Swing程序设计 227

13.1 Swing概述 228

13.1.1 Swing特点 228

13.1.2 Swing包 228

13.1.3 常用Swing组件概述 229

13.2 常用窗体 229

13.2.1 JFrame窗体 229

13.2.2 JDialog窗体 231

13.3 标签组件与图标 233

13.3.1 标签的使用 233

13.3.2 图标的使用 234

13.4 常用布局管理器 236

13.4.1 绝对布局 237

13.4.2 流布局管理器 238

13.4.3 边界布局管理器 239

13.4.4 网格布局管理器 241

13.5 常用面板 242

13.5.1 JPanel面板 242

13.5.2 JScrollPane面板 243

13.6 按钮组件 244

13.6.1 提交按钮组件 244

13.6.2 单选按钮组件 246

13.6.3 复选框组件 247

13.7 列表组件 248

13.7.1 下拉列表框组件 248

13.7.2 列表框组件 250

13.8 文本组件 252

13.8.1 文本框组件 252

13.8.2 密码框组件 253

13.8.3 文本域组件 253

13.9 常用事件监听器 254

13.9.1 监听事件简介 255

13.9.2 动作事件监听器 255

13.9.3 焦点事件监听器 257

13.10 小结 258

13.11 实践与练习 258

第14章 集合类 259

14.1 集合类概述 260

14.2 Collection接口 260

14.3 List集合 261

14.3.1 List接口 261

14.3.2 List接口的实现类 262

14.4 Set集合 263

14.5 Map集合 266

14.5.1 Map接口 266

14.5.2 Map接口的实现类 267

14.6 小结 269

14.7 实践与练习 270

第15章 I/O(输入/输出) 271

15.1 流概述 272

15.2 输入/输出流 272

15.2.1 输入流 272

15.2.2 输出流 274

15.3 File类 275

15.3.1 文件的创建与删除 275

15.3.2 获取文件信息 276

15.4 文件输入/输出流 278

15.4.1 FilelnputStream与FileOutputStream类 278

15.4.2 FileReader和FileWriter类 279

15.5 带缓存的输入/输出流 282

15.5.1 BufferedInputStream与BufferedOutputStream类 282

15.5.2 BufferedReader与BufferedWriter类 282

15.6 数据输入/输出流 284

15.7 ZIP压缩输入/输出流 285

15.7.1 压缩文件 286

15.7.2 解压缩ZIP文件 287

15.8 小结 289

15.9 实践与练习 289

第16章 反射 290

16.1 Class类与Java反射 291

16.1.1 访问构造方法 292

16.1.2 访问成员变量 295

16.1.3 访问方法 298

16.2 使用Annotation功能 301

16.2.1 定义Annotation类型 301

16.2.2 访问Annotation信息 304

16.3 小结 307

16.4 实践与练习 307

第17章 枚举类型与泛型 308

17.1 枚举类型 309

17.1.1 使用枚举类型设置常量 309

17.1.2 深入了解枚举类型 311

17.1.3 使用枚举类型的优势 316

17.2 泛型 316

17.2.1 回顾向上转型与向下转型 317

17.2.2 定义泛型类 318

17.2.3 泛型的常规用法 319

17.2.4 泛型的高级用法 322

17.2.5 泛型总结 325

17.3 小结 325

17.4 实践与练习 325

第18章 多线程 326

18.1 线程简介 327

18.2 实现线程的两种方式 327

18.2.1 继承Thread类 328

18.2.2 实现Runnable接口 329

18.3 线程的生命周期 331

18.4 操作线程的方法 333

18.4.1 线程的休眠 333

18.4.2 线程的加入 335

18.4.3 线程的中断 336

18.4.4 线程的礼让 338

18.5 线程的优先级 338

18.6 线程同步 340

18.6.1 线程安全 341

18.6.2 线程同步机制 342

18.7 小结 344

18.8 实践与练习 345

第19章 网络通信 346

19.1 网络程序设计基础 347

19.1.1 局域网与因特网 347

19.1.2 网络协议 347

19.1.3 端口和套接字 348

19.2 TCP程序设计基础 349

19.2.1 InetAddress类 349

19.2.2 ServerSocket类 350

19.2.3 TCP网络程序 351

19.3 UDP程序设计基础 355

19.3.1 DatagramPacket类 355

19.3.2 DatagramSocket类 356

19.3.3 UDP网络程序 356

19.4 小结 359

19.5 实践与练习 360

第20章 数据库操作 361

20.1 数据库基础知识 362

20.1.1 什么是数据库 362

20.1.2 数据库的种类及功能 363

20.1.3 SQL语言 363

20.2 JDBC概述 365

20.2.1 JDBC-ODBC桥 365

20.2.2 JDBC技术 366

20.2.3 JDBC驱动程序的类型 366

20.3 JDBC中常用的类和接口 366

20.3.1 Connection接口 367

20.3.2 Statement接口 367

20.3.3 PreparedStatement接口 368

20.3.4 DriverManager类 368

20.3.5 ResultSet接口 368

20.4 数据库操作 369

20.4.1 连接数据库 370

20.4.2 向数据库发送SQL语句 371

20.4.3 处理查询结果集 371

20.4.4 顺序查询 372

20.4.5 模糊查询 373

20.4.6 预处理语句 374

20.4.7 添加、修改、删除记录 376

20.5 小结 378

20.6 实践与练习 378

第3篇 高级应用 380

第21章 Swing表格组件 380

21.1 利用JTable类直接创建表格 381

21.1.1 创建表格 381

21.1.2 定制表格 383

21.1.3 操纵表格 387

21.2 表格模型与表格 389

21.2.1 利用表格模型创建表格 389

21.2.2 维护表格模型 391

21.3 提供行标题栏的表格 393

21.4 小结 398

21.5 实践与练习 398

第22章 Swing树组件 399

22.1 简单的树 400

22.2 处理选中节点事件 401

22.3 遍历树节点 404

22.4 定制树 406

22.5 维护树模型 408

22.6 处理展开节点事件 410

22.7 小结 412

22.8 实践与练习 412

第23章 Swing其他高级组件 413

23.1 高级组件面板 414

23.1.1 分割面板 414

23.1.2 选项卡面板 417

23.1.3 桌面面板和内部窗体 419

23.2 菜单 424

23.2.1 创建菜单栏 424

23.2.2 创建弹出式菜单 426

23.2.3 定制个性化菜单 426

23.3 工具栏 430

23.4 文件选择器 432

23.4.1 文件选择对话框 432

23.4.2 使用文件过滤器 433

23.5 进度条 435

23.6 系统托盘 436

23.7 桌面集成控件 437

23.8 小结 438

23.9 实践与练习 438

第24章 高级布局管理器 439

24.1 箱式布局管理器 440

24.2 卡片布局管理器 442

24.3 网格组布局管理器 445

24.4 弹簧布局管理器 451

24.4.1 使用弹簧布局管理器 451

24.4.2 使用弹簧和支柱 454

24.4.3 利用弹簧控制组件大小 455

24.5 小结 456

24.6 实践与练习 456

第25章 高级事件处理 457

25.1 键盘事件 458

25.2 鼠标事件 460

25.3 窗体事件 462

25.3.1 捕获窗体焦点变化事件 462

25.3.2 捕获窗体状态变化事件 463

25.3.3 捕获其他窗体事件 465

25.4 选项事件 467

25.5 表格模型事件 468

25.6 小结 471

25.7 实践与练习 471

第26章 AWT绘图与音频播放 472

26.1 Java绘图 473

26.1.1 Graphics 473

26.1.2 Graphics2D 473

26.2 绘制图形 473

26.3 绘图颜色与笔画属性 477

26.3.1 设置颜色 477

26.3.2 笔画属性 478

26.4 绘制文本 479

26.4.1 设置字体 480

26.4.2 显示文字 480

26.5 绘制图片 481

26.6 图像处理 483

26.6.1 放大与缩小 483

26.6.2 图像翻转 485

26.6.3 图像旋转 487

26.6.4 图像倾斜 488

26.7 播放音频文件 490

26.8 小结 492

26.9 实践与练习 492

第27章 打印技术 493

27.1 打印控制类 494

27.2 “打印”对话框 495

27.3 打印页面 497

27.4 多页打印 499

27.5 打印预览 501

27.6 小结 503

27.7 实践与练习 503

第4篇 项目实战 506

第28章 企业进销存管理系统 506

28.1 系统分析 507

28.1.1 需求分析 507

28.1.2 可行性分析 507

28.1.3 编写项目计划书 508

28.2 系统设计 510

28.2.1 系统目标 510

28.2.2 系统功能结构 510

28.2.3 系统业务流程图 511

28.2.4 系统编码规范 512

28.3 开发环境 513

28.4 数据库与数据表设计 514

28.4.1 数据库分析 514

28.4.2 创建数据库 514

28.4.3 创建数据表 515

28.5 创建项目 519

28.6 系统文件夹组织结构 520

28.7 公共类设计 520

28.7.1 Item公共类 520

28.7.2 数据模型公共类 521

28.7.3 Dao公共类 523

28.8 系统登录模块设计 533

28.8.1 设计登录窗体 534

28.8.2 “密码”文本框的回车事件 535

28.8.3 “登录”按钮的事件处理 535

28.9 系统主窗体设计 536

28.9.1 设计菜单栏 537

28.9.2 设计工具栏 539

28.9.3 设计状态栏 540

28.10 进货单模块设计 541

28.10.1 设计进货单窗体 542

28.10.2 添加进货商品 542

28.10.3 进货统计 544

28.10.4 商品入库 545

28.11 销售单模块设计 547

28.11.1 设计销售单窗体 548

28.11.2 添加销售商品 548

28.11.3 销售统计 549

28.11.4 商品销售 550

28.12 库存盘点模块设计 551

28.12.1 设计库存盘点窗体 552

28.12.2 读取库存商品 552

28.12.3 统计损益数量 554

28.13 数据库备份与恢复模块设计 555

28.13.1 设计窗体 555

28.13.2 文件浏览 555

28.13.3 备份数据库 556

28.13.4 恢复数据库 557

28.14 运行项目 558

28.15 系统打包发行 559

28.16 开发常见问题与解决 562

28.16.1 打包的JAR文件无法登录 562

28.16.2 无法打开内部窗体 562

28.16.3 “关于”界面被其他窗体覆盖 563

28.16.4 打包JAR文件之后无法运行 563

28.16.5 程序运行后没有出现闪屏界面 563

28.17 小结 564