| 作者 |
| 贺敏 |
| 丛书名 |
| 出版社 |
| 电子工业出版社 |
| ISBN |
| 9787121365317 |
| 简要 |
| 简介 |
| 内容简介书籍计算机书籍 本书基于TOPCARES-CDIO工程化教育理念,以“贪吃蛇游戏”作为案例进行项目驱动,围绕项目开发所需知识进行内容组织,在保证实用性的同时兼顾知识的系统性。全书共分为 5 个单元,前 4 个单元系统论述了Java基础语法(包括变量和表达式、程序控制结构、字符串和数组)、面向对象程序设计的概念(包括特征和原则、类定义语法、继承和多态、抽象类和接口、枚举和泛型等)、Java Swing图形化界面编程技术、Java常用类(包括正则表达式、集合类、Java I/O、数据库访问技术等);第5单元按工程化方式完整实现了“贪吃蛇游戏”的项目,对前面的知识进行了综合应用。本书适合作为高等院校计算机及相关专业本科教材,也可作为相关培训机构的培训教材,以及对 Java开发技术感兴趣人员的参考书。 |
| 目录 |
| 第1单元 Java基础语法 第1章 绪论 3 1.1 Java概述 3 1.1.1 Java的起源和发展 3 1.1.2 Java语言特点 4 1.1.3 Java运行机制 5 1.2 面向对象思想 6 1.3 综合项目概述 6 本章小结 7 习题 7 第2章 结构化基础语法 8 2.1 Java程序组成 8 2.1.1 注释 9 2.1.2 程序入口点 10 2.1.3 程序组织 10 2.1.4 程序错误 11 2.1.5 代码规范 12 2.1.6 使用IDE 12 2.2 数据类型和变量 14 2.2.1 基本类型和引用类型 14 2.2.2 基本类型 14 2.2.3 变量 16 2.2.4 类型转换 17 2.3 表达式和语句 18 2.3.1 算术运算 18 2.3.2 关系运算 19 2.3.3 条件运算 20 2.3.4 赋值运算 21 2.3.5 运算符优先级 21 2.3.6 位运算 22 2.3.7 其他运算 23 本章小结 24 习题 24 第3章 字符串和数组 25 3.1 字符串 25 3.1.1 字符串的创建 25 3.1.2 格式化字符串 26 3.1.3 字符串和基本类型转换 26 3.1.4 字符串常用方法 27 3.2 数组 28 3.2.1 数组的定义 28 3.2.2 数组元素的访问 29 3.2.3 多维数组 29 本章小结 29 习题 29 第4章 程序控制结构 31 4.1 分支结构 31 4.1.1 if-else分支 31 4.1.2 switch分支 34 4.2 循环结构 35 4.2.1 while循环 36 4.2.2 do-while循环 37 4.2.3 for循环 37 4.3 跳转语句 39 4.3.1 break语句 39 4.3.2 continue语句 40 4.4 递归调用 41 4.5 综合应用 42 4.5.1 二分查找算法 42 4.5.2 九宫算术 43 4.5.3 Excel地址转换 45 4.5.4 约瑟夫环 46 4.6 单元项目 48 4.6.1 项目概述 48 4.6.2 设计与实现 48 本章小结 50 习题 51 第2单元 Java面向对象 第5章 面向对象思想及原则 55 5.1 面向对象思想特征 55 5.2 面向对象思想原则 57 5.3 OOP引例 58 本章小结 61 习题 62 第6章 类定义语法 63 6.1 成员访问控制 63 6.2 数据相关成员 64 6.2.1 成员变量 64 6.2.2 构造方法 64 6.2.3 get/set访问器 65 6.3 方法定义 66 6.3.1 方法构成 66 6.3.2 方法重载 69 6.3.3 可变参数 70 6.4 类成员 71 6.4.1 类和对象 71 6.4.2 类成员定义 72 本章小结 74 习题 74 第7章 面向对象高级概念 76 7.1 继承和多态 76 7.1.1 继承 76 7.1.2 对象的类型转换 78 7.1.3 多态 79 7.1.4 Object类 82 7.2 抽象类和接口 89 7.2.1 抽象类 89 7.2.2 接口 90 7.2.3 抽象类和接口的区别 92 7.3 内部类 94 7.3.1 顶层类成员 94 7.3.2 局部内部类 96 7.3.3 内部类与多重继承 97 7.4 枚举类型 98 7.4.1 枚举的定义 98 7.4.2 枚举的实现原理 98 7.4.3 枚举的使用 100 7.5 泛型编程 102 7.5.1 泛型类型 102 7.5.2 类型擦除 104 7.5.3 类型限制 105 7.5.4 泛型方法 107 7.6 类的组织:包 108 7.6.1 包的概念与意义 108 7.6.2 包的定义与使用 108 7.6.3 静态导入 109 7.7 单元项目 109 7.7.1 项目概述 109 7.7.2 设计与实现 110 本章小结 117 习题 117 第3单元 GUI编程 第8章 Java Swing技术 121 8.1 Swing技术简介 121 8.1.1 Swing概述 121 8.1.2 GUI程序的创建 122 8.1.3 窗口坐标体系 124 8.1.4 界面风格 124 8.1.5 模式窗口与非模式窗口 125 8.2 常用容器 126 8.2.1 顶层容器 126 8.2.2 中间容器 129 8.3 常用布局 131 8.3.1 BorderLayout边界布局 131 8.3.2 FlowLayout流式布局 133 8.3.3 CardLayout卡片布局 134 8.3.4 GridLayout网格布局 134 8.3.5 BoxLayout箱式布局 135 8.3.6 GridBagLayout非规则网格布局 137 8.3.7 绝对布局 140 8.4 事件监听和处理 142 8.4.1 事件处理机制 142 8.4.2 键盘事件处理 144 8.4.3 鼠标事件处理 147 8.4.4 窗口事件处理 151 8.5 常用UI元素 153 8.5.1 辅助元素 154 8.5.2 常用组件 156 8.5.3 通用对话框 161 8.5.4 菜单栏 167 8.5.5 系统托盘 169 8.6 自动化任务 171 8.6.1 模拟鼠标键盘 171 8.6.2 屏幕截图 174 本章小结 176 习题 177 第9章 Java绘图技术 178 9.1 界面绘图机制 178 9.1.1 绘制过程 178 9.1.2 双缓冲技术 179 9.1.3 绘图与动画 179 9.2 Graphics的使用 181 9.2.1 几何图形绘制和填充 181 9.2.2 字符串绘制 185 9.2.3 图片绘制 191 9.3 单元项目 194 9.3.1 GUI计算器 194 9.3.2 简易绘图软件 198 本章小结 208 习题 208 第4单元 Java常用技术 第10章 字符串与正则表达式 213 10.1 再论字符串 213 10.1.1 字符串的不变性 213 10.1.2 StringBuilder类 215 10.1.3 字符串其他常用操作 217 10.2 正则表达式 219 10.2.1 正则符号 219 10.2.2 正则验证与匹配 221 10.2.3 支持正则的字符串方法 225 本章小结 227 习题 227 第11章 Java集合框架 229 11.1 集合框架概述 229 11.2 常用集合类 231 11.2.1 ArrayList类 231 11.2.2 LinkedList类 233 11.2.3 HashMap类 236 11.2.4 HashSet类 240 11.3 集合工具类 240 11.3.1 Arrays类 240 11.3.2 Collections类 242 本章小结 242 习题 242 第12章 文件与I/O流 244 12.1 文件 244 12.1.1 创建文件对象 245 12.1.2 操作文件对象 245 12.2 I/O流概述 247 12.2.1 流的概念与分类 247 12.2.2 流的套接 247 12.3 字符流读/写 248 12.3.1 字符阅读流 248 12.3.2 字符书写流 249 12.4 字节流读/写 250 12.4.1 字节输入流 250 12.4.2 字节输出流 252 12.4.3 标准输入/输出 257 12.5 对象序列化 258 12.5.1 序列化技术概述 258 12.5.2 序列化与反序列化 258 12.5.3 序列化的限制 261 12.6 单元项目 262 12.6.1 项目概述 262 12.6.2 设计与实现 263 本章小结 267 习题 267 第13章 数据库访问技术JDBC 269 13.1 JDBC基本概念 269 13.2 JDBC驱动程序类型 270 13.3 搭建数据库环境 271 13.3.1 安装MySQL数据库 271 13.3.2 建立数据表 271 13.3.3 配置JDBC驱动 271 13.3.4 接口Driver和类 DriverManager 272 13.3.5 编写驱动测试程序 273 13.4 数据库访问 274 13.4.1 注册数据库驱动 274 13.4.2 创建连接对象 274 13.4.3 创建SQL对象 275 13.4.4 执行SQL语句 275 13.4.5 访问结果集对象 276 13.5 数据库操作 277 13.5.1 在Swing窗口中显示结果集 278 13.5.2 元数据 280 13.5.3 PreparedStatement对象 281 13.6 事务处理 282 13.6.1 事务 282 13.6.2 保存点 284 本章小结 285 习题 285 第5单元 课程项目实践 第14章 课程项目—贪吃蛇游戏 289 14.1 项目功能描述 289 14.2 项目设计与实现 289 14.2.1 搭建游戏框架 289 14.2.2 GameImage类实现 290 14.2.3 DigitImage类实现 292 14.2.4 GameConfig类实现 292 14.2.5 Node类实现 294 14.2.6 Snake类实现 295 14.2.7 事件机制模拟 297 14.2.8 GameServer类实现 298 14.2.9 PanelInfo类实现 299 14.2.10 PanelGame类实现 301 14.2.11 国际化与本地化 301 14.2.12 MenuGame类实现 302 14.2.13 FrameGame类实现 304 14.2.14 PlayerController类实现 305 14.2.15 GameController类实现 305 14.2.16 GameEntry类实现 307 14.3 课程项目总结 308 附录A 《劝学篇》 309 附录B 编码规范 311 附录C JDK版本特性 314 |