Java从入门到精通(第5版)
¥69.80定价
作者: 明日科技
出版时间:2019-03
出版社:清华大学出版社
- 清华大学出版社
- 9787302517597
- 280873
- 2019-03
内容简介
《Java从入门到精通(第5版)》从初学者角度出发,通过通俗易懂的语言、丰富多彩的实例,详细介绍了使用Java语言进行程序开发需要掌握的知识。全书分为27章,包括初识Java,熟悉Eclipse开发工具,Java语言基础,流程控制,字符串,数组,类和对象,包装类,数字处理类,接口、继承与多态,类的高级特性,异常处理,Swing程序设计,集合类,I/O(输入/输出),反射,枚举类型与泛型,多线程,网络通信,数据库操作,Swing表格组件,Swing树组件,Swing其他高级组件,高级事件处理,AWT绘图,奔跑吧小恐龙和企业进销存管理系统等。
目录
”开发资源库”目录…………XV第1篇 基础知识第1章 初识Java 2 视频讲解:17分钟1.1 Java简介 31.1.1 什么是Java语言 31.1.2 Java的应用领域 31.1.3 Java的版本 41.1.4 怎样学好Java 51.1.5 Java API文档 61.2 Java语言的特性 71.2.1 简单 71.2.2 面向对象 71.2.3 分布性 71.2.4 可移植性 71.2.5 解释型 81.2.6 安全性 81.2.7 健壮性 81.2.8 多线程 81.2.9 高性能 81.2.10 动态 81.3 搭建Java环境 91.3.1 JDK下载 91.3.2 Windows系统的JDK环境 101.4 小结 13第2章 熟悉Eclipse开发工具 14 视频讲解:21分钟2.1 熟悉Eclipse 152.1.1 Eclipse简介 152.1.2 下载Eclipse 152.1.3 安装Eclipse的中文语言包 172.1.4 Eclipse的配置与启动 192.1.5 Eclipse工作台 202.1.6 透视图与视图 212.1.7 菜单栏 212.1.8 工具栏 252.1.9 ”包资源管理器”视图 252.1.10 ”控制台”视图 262.2 使用Eclipse 262.2.1 创建Java项目 262.2.2 创建Java类文件 272.2.3 使用编辑器编写程序代码 282.2.4 运行Java程序 312.3 程序调试 312.4 小结 332.5 实践与练习 33第3章 Java语言基础 34 视频讲解:1小时45分钟3.1 Java主类结构 353.1.1 包声明 353.1.2 声明成员变量和局部变量 363.1.3 编写主方法 363.1.4 导入API类库 363.2 基本数据类型 363.2.1 整数类型 373.2.2 浮点类型 383.2.3 字符类型 393.2.4 布尔类型 403.3 变量与常量 403.3.1 标识符和关键字 413.3.2 声明变量 413.3.3 声明常量 423.3.4 变量的有效范围 433.4 运算符 443.4.1 赋值运算符 453.4.2 算术运算符 463.4.3 自增和自减运算符 473.4.4 比较运算符 473.4.5 逻辑运算符 483.4.6 位运算符 493.4.7 三元运算符 513.4.8 运算符优先级 513.5 数据类型转换 523.5.1 隐式类型转换 533.5.2 显式类型转换 543.6 代码注释与编码规范 543.6.1 代码注释 553.6.2 编码规范 563.7 小结 563.8 实践与练习 57第4章 流程控制 58 视频讲解:1小时21分钟4.1 复合语句 594.2 条件语句 604.2.1 if条件语句 604.2.2 switch多分支语句 644.3 循环语句 664.3.1 while循环语句 674.3.2 do…while循环语句 684.3.3 for循环语句 694.4 循环控制 714.4.1 break语句 714.4.2 continue语句 734.5 小结 754.6 实践与练习 75第5章 字符串 76 视频讲解:1小时53分钟5.1 String类 775.1.1 声明字符串 775.1.2 创建字符串 775.2 连接字符串 785.2.1 连接多个字符串 795.2.2 连接其他数据类型 795.3 获取字符串信息 805.3.1 获取字符串长度 815.3.2 字符串查找 815.3.3 获取指定索引位置的字符 825.4 字符串操作 835.4.1 获取子字符串 835.4.2 去除空格 845.4.3 字符串替换 855.4.4 判断字符串的开始与结尾 865.4.5 判断字符串是否相等 875.4.6 按字典顺序比较两个字符串 885.4.7 字母大小写转换 895.4.8 字符串分割 905.5 格式化字符串 925.5.1 日期和时间字符串格式化 925.5.2 常规类型格式化 955.6 使用正则表达式 965.7 字符串生成器 995.8 小结 1015.9 实践与练习 101第6章 数组 102 视频讲解:1小时21分钟6.1 数组概述 1036.2 一维数组的创建及使用 1036.2.1 创建一维数组 1036.2.2 初始化一维数组 1046.2.3 使用一维数组 1056.3 二维数组的创建及使用 1056.3.1 二维数组的创建 1056.3.2 二维数组初始化 1066.3.3 使用二维数组 1076.4 数组的基本操作 1086.4.1 遍历数组 1086.4.2 填充替换数组元素 1096.4.3 对数组进行排序 1116.4.4 复制数组 1126.4.5 数组查询 1136.5 数组排序算法 1156.5.1 冒泡排序 1156.5.2 直接选择排序 1176.5.3 反转排序 1196.6 小结 1216.7 实践与练习 121第7章 类和对象 122 视频讲解:1小时27分钟7.1 面向对象概述 1237.1.1 对象 1237.1.2 类 1247.1.3 封装 1257.1.4 继承 1257.1.5 多态 1267.2 类 1277.2.1 成员变量 1277.2.2 成员方法 1287.2.3 权限修饰符 1287.2.4 局部变量 1307.2.5 局部变量的有效范围 1307.2.6 this关键字 1317.3 类的构造方法 1327.4 静态变量、常量和方法 1337.5 类的主方法 1357.6 对象 1367.6.1 对象的创建 1367.6.2 访问对象的属性和行为 1387.6.3 对象的引用 1407.6.4 对象的比较 1417.6.5 对象的销毁 1417.7 小结 1427.8 实践与练习 142第8章 包装类 144 视频讲解:32分钟8.1 Integer 1458.2 Boolean 1478.3 Byte 1498.4 Character 1508.5 Double 1518.6 Number 1528.7 小结 1538.8 实践与练习 153第9章 数字处理类 154 视频讲解:38分钟9.1 数字格式化 1559.2 数学运算 1579.2.1 Math类 1579.2.2 常用数学运算方法 1589.3 随机数 1629.3.1 ndom()方法 1629.3.2 Random类 1649.4 大数字运算 1659.4.1 BigInteger 1659.4.2 BigDecimal 1679.5 小结 1709.6 实践与练习 170第2篇 核心技术第10章 接口、继承与多态 172 视频讲解:1小时30分钟10.1 类的继承 17310.2 Object类 17610.3 对象类型的转换 17810.3.1 向上转型 17810.3.2 向下转型 17910.4 使用instanceof操作符判断对象类型 18010.5 方法的重载 18210.6 多态 18510.7 抽象类与接口 18610.7.1 抽象类 18610.7.2 接口 18810.8 小结 19010.9 实践与练习 191第11章 类的高级特性 192 视频讲解:35分钟11.1 Java类包 19311.1.1 类名冲突 19311.1.2 完整的类路径 19311.1.3 创建包 19411.1.4 导入包 19511.2 final变量 19711.3 final方法 19911.4 final类 20111.5 内部类 20111.5.1 成员内部类 20211.5.2 局部内部类 20611.5.3 匿名内部类 20611.5.4 静态内部类 20711.5.5 内部类的继承 20811.6 小结 20911.7 实践与练习 209第12章 异常处理 210 视频讲解:1小时8分钟12.1 异常概述 21112.2 处理程序异常错误 21112.2.1 错误 21212.2.2 捕捉异常 21212.3 Java常见异常 21412.4 自定义异常 21512.5 在方法中抛出异常 21612.5.1 使用throws关键字抛出异常 21612.5.2 使用throw关键字抛出异常 21712.6 运行时异常 21912.7 异常的使用原则 21912.8 小结 22012.9 实践与练习 220第13章 Swing程序设计 221 视频讲解:3小时2分钟13.1 Swing概述 22213.1.1 Swing特点 22213.1.2 Swing包 22213.1.3 常用Swing组件概述 22313.2 常用窗体 22313.2.1 JFrame窗体 22313.2.2 JDialog窗体 22513.3 标签组件与图标 22713.3.1 标签的使用 22713.3.2 图标的使用 22813.4 常用布局管理器 23013.4.1 绝对布局 23113.4.2 流布局管理器 23213.4.3 边界布局管理器 23313.4.4 网格布局管理器 23413.4.5 网格组布局管理器 23613.5 常用面板 24113.5.1 JPanel面板 24213.5.2 JScrollPane面板 24313.6 按钮组件 24413.6.1 提交按钮组件 24413.6.2 单选按钮组件 24513.6.3 复选框组件 24613.7 列表组件 24713.7.1 下拉列表框组件 24813.7.2 列表框组件 24913.8 文本组件 25113.8.1 文本框组件 25113.8.2 密码框组件 25213.8.3 文本域组件 25313.9 常用事件监听器 25413.9.1 监听事件简介 25413.9.2 动作事件监听器 25413.9.3 焦点事件监听器 25613.10 小结 25713.11 实践与练习 257第14章 集合类 258 视频讲解:60分钟14.1 集合类概述 25914.2 Collection接口 25914.3 List集合 26014.3.1 List接口 26014.3.2 List接口的实现类 26114.4 Set集合 26214.5 Map集合 26414.5.1 Map接口 26514.5.2 Map接口的实现类 26614.6 小结 26814.7 实践与练习 268第15章 I/O(输入/输出) 269 视频讲解:1小时40分钟15.1 流概述 27015.2 输入/输出流 27015.2.1 输入流 27015.2.2 输出流 27215.3 File类 27315.3.1 文件的创建与删除 27315.3.2 获取文件信息 27415.4 文件输入/输出流 27515.4.1 FileInputStream与FileOutputStream类 27615.4.2 FileReader和FileWriter类 27715.5 带缓存的输入/输出流 27915.5.1 BufferedInputStream与BufferedOutputStream类 27915.5.2 BufferedReader与BufferedWriter类 28015.6 数据输入/输出流 28115.7 ZIP压缩输入/输出流 28315.7.1 压缩文件 28315.7.2 解压缩ZIP文件 28515.8 小结 28615.9 实践与练习 287第16章 反射 288 视频讲解:1小时3分钟16.1 Class类与Java反射 28916.1.1 访问构造方法 29016.1.2 访问成员变量 29316.1.3 访问方法 29616.2 使用Annotation功能 29916.2.1 定义Annotation类型 29916.2.2 访问Annotation信息 30216.3 小结 30516.4 实践与练习 305第17章 枚举类型与泛型 306 视频讲解:1小时20分钟17.1 枚举类型 30717.1.1 使用枚举类型设置常量 30717.1.2 深入了解枚举类型 30917.1.3 使用枚举类型的优势 31417.2 泛型 31417.2.1 回顾向上转型与向下转型 31417.2.2 定义泛型类 31517.2.3 泛型的常规用法 31717.2.4 泛型的高级用法 32017.2.5 泛型总结 32217.3 小结 32317.4 实践与练习 323第18章 多线程 324 视频讲解:45分钟18.1 线程简介 32518.2 实现线程的两种方式 32518.2.1 继承Thread类 32618.2.2 实现Runnable接口 32718.3 线程的生命周期 32918.4 操作线程的方法 33118.4.1 线程的休眠 33118.4.2 线程的加入 33318.4.3 线程的中断 33418.4.4 线程的礼让 33618.5 线程的优先级 33618.6 线程同步 33818.6.1 线程安全 33818.6.2 线程同步机制 34018.7 小结 34218.8 实践与练习 342第19章 网络通信 343 视频讲解:60分钟19.1 网络程序设计基础 34419.1.1 局域网与因特网 34419.1.2 网络协议 34419.1.3 端口和套接字 34519.2 TCP程序设计基础 34619.2.1 InetAddress类 34619.2.2 ServerSocket类 34719.2.3 TCP网络程序 34819.3 UDP程序设计基础 35119.3.1 DatagramPacket类 35219.3.2 DatagramSocket类 35219.3.3 UDP网络程序 35319.4 小结 35619.5 实践与练习 356第20章 数据库操作 357 视频讲解:47分钟20.1 数据库基础知识 35820.1.1 什么是数据库 35820.1.2 数据库的种类及功能 35920.1.3 SQL语言 35920.2 JDBC概述 36120.2.1 JDBC-ODBC桥 36120.2.2 JDBC技术 36120.2.3 JDBC驱动程序的类型 36220.3 JDBC中常用的类和接口 36220.3.1 Connection接口 36220.3.2 Statement接口 36320.3.3 PreparedStatement接口 36320.3.4 DriverManager类 36420.3.5 ResultSet接口 36420.4 数据库操作 36520.4.1 连接数据库 36520.4.2 向数据库发送SQL语句 36720.4.3 处理查询结果集 36720.4.4 顺序查询 36720.4.5 模糊查询 36820.4.6 预处理语句 37020.4.7 添加、修改、删除记录 37120.5 小结 37320.6 实践与练习 373第3篇 高级应用第21章 Swing表格组件 375 视频讲解:33分钟21.1 利用JTable类直接创建表格 37621.1.1 创建表格 37621.1.2 定制表格 37821.1.3 操纵表格 38221.2 表格模型与表格 38421.2.1 利用表格模型创建表格 38421.2.2 维护表格模型 38621.3 提供行标题栏的表格 38821.4 小结 39221.5 实践与练习 392第22章 Swing树组件 393 视频讲解:20分钟22.1 简单的树 39422.2 处理选中节点事件 39522.3 遍历树节点 39722.4 定制树 39922.5 维护树模型 40122.6 处理展开节点事件 40422.7 小结 40622.8 实践与练习 406第23章 Swing其他高级组件 407 视频讲解:1小时30分钟23.1 高级组件面板 40823.1.1 分割面板 40823.1.2 选项卡面板 41023.1.3 桌面面板和内部窗体 41323.2 菜 单 41723.2.1 创建菜单栏 41723.2.2 创建弹出式菜单 41923.2.3 定制个性化菜单 42023.3 工具 栏 42423.4 文件选择器 42523.4.1 文件选择对话框 42523.4.2 使用文件过滤器 42623.5 进 度 条 42823.6 系 统 托 盘 42923.7 桌面集成控件 43123.8 小结 43123.9 实践与练习 432第24章 高级事件处理 433 视频讲解:1小时13分钟24.1 键 盘 事 件 43424.2 鼠 标 事 件 43624.3 窗体事件 43824.3.1 捕获窗体焦点变化事件 43824.3.2 捕获窗体状态变化事件 43924.3.3 捕获其他窗体事件 44124.4 选项事件 44224.5 表格模型事件 44424.6 小结 44624.7 实践与练习 447第25章 AWT绘图 448 视频讲解:1小时24分钟25.1 Java绘图 44925.1.1 Graphics 44925.1.2 Graphics2D 44925.2 绘制图形 44925.3 绘图颜色与画笔属性 45325.3.1 设置颜色 45325.3.2 画笔属性 45425.4 绘制文本 45525.4.1 设置字体 45625.4.2 显示文字 45625.5 绘制图片 45725.6 图像处理 45925.6.1 放大与缩小 45925.6.2 图像翻转 46125.6.3 图像旋转 46325.6.4 图像倾斜 46425.7 小结 46625.8 实践与练习 466第4篇 项目实战第26章 奔跑吧,小恐龙! 468 视频讲解:54分钟26.1 开发背景 46926.2 系统结构设计 46926.2.1 系统功能结构 46926.2.2 系统业务流程 47026.3 项目目录结构预览 47026.4 游戏模型设计 47126.4.1 恐龙类 47126.4.2 障碍类 47426.5 音效模块设计 47526.5.1 音频播放器 47626.5.2 音效工具类 47726.6 计分器模块设计 47826.7 视图模块设计 48126.7.1 主窗体 48126.7.2 游戏面板 48326.7.3 成绩对话框 48526.8 游戏核心功能设计 48726.8.1 刷新帧 48726.8.2 滚动背景 48826.8.3 碰撞检测 49926.8.4 键盘监听 49026.9 小结 491第27章 企业进销存管理系统 492 视频讲解:1小时12分钟27.1 系统分析 49327.1.1 需求分析 49327.1.2 可行性分析 49327.1.3 编写项目计划书 49427.2 系统设计 49627.2.1 系统目标 49627.2.2 系统功能结构 49627.2.3 系统业务流程图 49727.2.4 系统编码规范 49827.3 开发环境 49927.4 数据库与数据表设计 50027.4.1 数据库分析 50027.4.2 创建数据库 50027.4.3 创建数据表 50127.5 创建项目 50527.6 系统文件夹组织结构 50627.7 公共类设计 50627.7.1 Item公共类 50627.7.2 数据模型公共类 50727.7.3 Dao公共类 50927.8 系统登录模块设计 51927.8.1 设计登录窗体 51927.8.2 ”密码”文本框的回车事件 52027.8.3 ”登录”按钮的事件处理 52027.9 系统主窗体设计 52227.9.1 设计菜单栏 52227.9.2 设计工具栏 52427.9.3 设计状态栏 52527.10 进货单模块设计 52627.10.1 设计进货单窗体 52727.10.2 添加进货商品 52827.10.3 进货统计 52927.10.4 商品入库 53027.11 销售单模块设计 53227.11.1 设计销售单窗体 53327.11.2 添加销售商品 53327.11.3 销售统计 53427.11.4 商品销售 53527.12 库存盘点模块设计 53627.12.1 设计库存盘点窗体 53727.12.2 读取库存商品 53727.12.3 统计损益数量 53927.13 数据库备份与恢复模块设计 54027.13.1 设计窗体 54027.13.2 文件浏览 54027.13.3 备份数据库 54127.13.4 恢复数据库 54227.14 运行项目 54327.15 开发常见问题与解决 54427.15.1 无法打开内部窗体 54427.15.2 ”关于”界面被其他窗体覆盖 54527.15.3 程序运行后没有出现闪屏界面 54527.16 小结 545