《JAVA程序设计从入门到精通 下 高级应用篇》PDF下载

  • 购买积分:17 如何计算积分?
  • 作  者:毛雪涛,丁毓峰著
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2018
  • ISBN:7121327066
  • 页数:578 页
图书介绍:本书针对初学和自学读者的特点,以通俗易懂的语言介绍Java语言,讲解Java基础开发。内容包括Java语言的发展、环境配置、基本语法、流程控制语句、字符串处理、数组、面向对象、图形界面设计、输入输出、处理异常。让读者更好的体会Java语言编程开发。本书运用大量示例,让读者在实战中体会编程的快乐。建议读者边学边练,有难以理解的概念或知识一定要弄清楚,不能迷迷糊糊。要培养自己单独开发项目的能力。

第3篇 核心技术篇 311

第11章 多线程 311

11.1 线程基础 311

11.1.1 什么是线程 312

11.1.2 Thread类创建线程的方法 312

11.1.3 Thread类创建线程的步骤 315

11.1.4 Runnable接口创建线程的方法 316

11.1.5 Runnable接口创建线程的步骤 318

11.2 线程的生命周期 319

11.2.1 线程的4种状态 320

11.2.2 线程的创建和启动 321

11.3 线程调度 322

11.4 线程同步 325

11.4.1 同步的概念 325

11.4.2 同步的格式 327

11.4.3 同步的应用 328

11.5 线程通信 330

11.5.1 生产者/消费者 330

11.5.2 共享队列 332

11.5.3 运行生产者/消费者 332

11.6 死锁 335

11.7 拓展训练 337

11.7.1 训练一:篮球运动员的比赛安排 337

11.7.2 训练二:ATM的实现 339

11.8 技术解惑 343

11.8.1 线程有哪5种基本状态,它们如何相互转换 343

11.8.2 如何让一个线程运行特定的时间后优雅地终止 343

第12章 异常处理 345

12.1 异常的概念 345

12.2 异常的基本样式 346

12.3 Java异常类 347

12.3.1 异常类的层次结构 348

12.3.2 异常处理方法 349

12.4 异常捕获 351

12.4.1 异常捕获处理语句块 351

12.4.2 必须执行语句块 354

12.4.3 必须执行语句块的意外 355

12.5 异常抛出 356

12.5.1 异常抛出的概念 356

12.5.2 throw 357

12.5.3 throws 358

12.5.4 抛出异常的步骤 361

12.6 自定义异常 362

12.6.1 创建用户自定义异常 362

12.6.2 捕获运行时异常 364

12.7 拓展训练 365

12.7.1 训练一:强制类型转换异常 365

12.7.2 训练二:找不到指定类时异常 366

12.8 技术解惑 367

12.8.1 如何优雅地处理异常 367

12.8.2 详解throw与throws关键字的用法区别 368

第13章 I/O系统 370

13.1 I/O概述 370

13.2 文件 371

13.2.1 File类 371

13.2.2 File类的应用 373

13.2.3 RandomAccessFile类 375

13.2.4 RandomAccessFile类的应用 376

13.3 字节流InputStream、OutputStream 379

13.3.1 字节输入、输出流 379

13.3.2 字节文件输入、输出流 381

13.3.3 字节缓冲输入、输出流 383

13.3.4 字节数据输入、输出流 384

13.3.5 字节对象输入、输出流 386

13.4 字符流Reader、Writer 390

13.4.1 字符读、写流 390

13.4.2 字符输入、输出流 391

13.4.3 文件读、写字符流 393

13.4.4 字符缓冲区读、写流 394

13.5 拓展训练 396

13.5.1 训练一:按顺序创建文件 396

13.5.2 训练二:将一个大文件分割为多个小文件 397

13.5.3 训练三:生成ZIP压缩文件 399

13.6 技术解惑 402

13.6.1 把InputStream转换成String的几种方法 402

13.6.2 读取大文件用哪个类合适 403

第14章 Java数据库编程 405

14.1 数据库简介 405

14.1.1 数据库的概念 405

14.1.2 数据库的特点 406

14.2 SQL语句 406

14.2.1 SQL语句的分类 407

14.2.2 SELECT查询语句 407

14.2.3 INSERT插入语句 407

14.2.4 UPDATE更新语句 408

14.2.5 DELETE删除语句 408

14.2.6 CREATE建表语句 408

14.2.7 ALTER修改表语句 409

14.2.8 DROP删除表语句 409

14.3 MySQL 409

14.3.1 MySQL的安装配置 410

14.3.2 MySQL的使用 413

14.4 JDBC 416

14.4.1 JDBC简介 416

14.4.2 JDBC常见接口和类 417

14.4.3 JDBC数据库连接步骤 417

14.4.4 加载JDBC驱动程序 418

14.4.5 获取Connection连接对象 421

14.4.6 创建Statement对象 423

14.4.7 创建PreparedStatement对象 425

14.4.8 创建ResultSet对象 427

14.5 执行SQL语句的方式 430

14.5.1 使用JDBC API 430

14.5.2 使用execute()方法执行SQL语句 430

14.6 Java与各种数据库的连接 431

14.7 数据库开发案例 433

14.7.1 构造方法 433

14.7.2 数据查询 434

14.7.3 主方法 436

14.8 拓展训练 437

14.8.1 训练一:向数据库中批量插入数据 437

14.8.2 训练二:将图片文件存入数据库 439

14.9 技术解惑 441

14.9.1 多个Connection能实现事务吗 441

14.9.2 如何测试java.sql.Connection类当前的连接是否正常可用 442

第15章 Java网络编程 443

15.1 网络程序设计基础 443

15.1.1 局域网与因特网 443

15.1.2 网络协议 444

15.1.3 端口和套接字 444

15.2 TCP程序设计基础 446

15.2.1 InetAddress类 446

15.2.2 ServerSocket类 448

15.2.3 TCP网络程序 450

15.3 UDP程序设计基础 453

15.3.1 DatagramPacket类 453

15.3.2 DatagramSocket类 453

15.3.3 UDP网络程序 454

15.4 拓展训练 457

15.4.1 训练一:实现网络文件的下载 457

15.4.2 训练二:模仿QQ创建实时聊天室 459

15.5 技术解惑 463

15.5.1 动态替换InetAddress中DNS的做法 463

15.5.2 输出datagramPacket的字符串时后面有很多小方块如何解决 464

第16章 Java图形界面编程 465

16.1 AWT简介 465

16.2 Swing基础 466

16.2.1 Swing的类层次结构 467

16.2.2 Swing的特点 468

16.2.3 Swing程序结构简介 468

16.3 事件类 470

16.3.1 事件类分类 470

16.3.2 动作事件类 471

16.3.3 调整事件类 471

16.3.4 焦点事件类 472

16.3.5 项目事件类 472

16.3.6 键盘事件类 473

16.3.7 鼠标事件类 473

16.3.8 窗口事件类 474

16.4 事件监听器 475

16.4.1 事件监听器接口 475

16.4.2 事件监听器的特点 477

16.5 轻量级容器 477

16.5.1 根面板(JRootPane) 478

16.5.2 面板(JPanel) 478

16.5.3 分层面板(JLayeredPane) 479

16.5.4 滚动窗口(JScrollPane) 479

16.5.5 分隔板(JSplitPane) 479

16.5.6 选项板(JTabbedPane) 480

16.5.7 工具栏(JToolBar) 480

16.6 Swing组件 480

16.6.1 按钮(JButton) 481

16.6.2 复选框(JCheckBox) 481

16.6.3 单选框(JRadioButton) 484

16.6.4 组合框(JComboBox) 485

16.6.5 进度条(JProgressBar) 485

16.6.6 表格(JTable) 485

16.6.7 树(JTree) 486

16.7 拓展训练 487

16.7.1 训练一:设置闪烁的标题栏 487

16.7.2 训练二:建立简单的时钟布局 489

16.7.3 训练三:给你最喜爱的脱口秀演员投票 492

16.7.4 训练四:包含图片的弹出菜单 495

16.7.5 训练五:震动效果的提示信息 497

16.8 技术解惑 499

16.8.1 Swing重要吗 499

16.8.2 Swing是否适合做大型项目及桌面应用 499

第4篇 实战篇 501

第17章 综合案例:学生信息管理系统 501

17.1 需求分析 501

17.2 系统设计 501

17.3 登录模块 503

17.3.1 设计构想 503

17.3.2 实现登录模块 503

17.4 学生信息管理系统 506

17.4.1 设计构想 506

17.4.2 实现学生信息管理系统主界面 507

17.4.3 增加学生信息 509

17.4.4 删除学生信息 512

17.4.5 修改学生信息 515

17.4.6 查询学生信息 519

17.4.7 成绩查询 523

17.4.8 退出系统 526

17.5 教师信息管理系统 528

17.5.1 教师信息管理系统主界面 528

17.5.2 增加教师信息 531

17.5.3 删除教师信息 534

17.5.4 修改教师信息 537

17.5.5 录入成绩 541

17.5.6 删除成绩 544

17.5.7 修改成绩 547

17.5.8 教师信息查询 550

17.5.9 退出系统 554

17.6 开发常见问题与解决 554

第18章 综合案例:进销存管理系统 556

18.1 系统分析 556

18.2 系统设计 557

18.2.1 系统架构 558

18.2.2 关键数据结构图 559

18.3 开发环境 559

18.3.1 服务器软件环境 559

18.3.2 服务器硬件环境 560

18.4 数据表设计 560

18.4.1 订单表设计 560

18.4.2 商品表设计 560

18.4.3 用户数据表设计 561

18.4.4 货架数据表设计 561

18.4.5 销售记录数据表设计 561

18.4.6 工作记录数据表设计 561

18.5 创建项目 562

18.6 系统文件夹组织结构 562

18.7 公共类设计 563

18.8 登录模块设计 565

18.9 系统主窗口设计 565

18.10 进货单模块设计 569

18.11 销售单模块设计 571

18.12 库存管理模块设计 573

18.13 数据库备份与恢复模块设计 575

18.14 运行项目 576

18.15 系统打包发行 576