当前位置:首页 > 工业技术
疯狂Java实战演义
疯狂Java实战演义

疯狂Java实战演义PDF电子书下载

工业技术

  • 电子书积分:17 积分如何计算积分?
  • 作 者:杨思雄,麦凯翔,李刚编著
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2010
  • ISBN:9787121108358
  • 页数:560 页
图书介绍:本书以15个生动的Java案例,引领读者体验Java开发的乐趣。书中使用Java的Swing技术开发了若干个游戏,从这些游戏中可以了解到,Java一样可以做出优秀的游戏和应用程序。除了这些游戏案例外,还有若干个读者平时会接触到的软件,例如Windows计算器、MySQL企业管理器、邮件客户端、多线程下载工具等。
《疯狂Java实战演义》目录

第1章 控制台五子棋 1

1.1 引言 2

1.1.1 五子棋介绍 2

1.1.2 输入输出约定 2

1.2 游戏流程描述 3

1.2.1 玩家输入坐标 3

1.2.2 “电脑”下棋 4

1.3 创建游戏的各个对象 4

1.3.1 Chessboard类 5

1.3.2 Chessman类 6

1.3.3 GobangGame类 6

1.4 棋盘类实现 7

1.4.1 初始化棋盘 7

1.4.2 输出棋盘 8

1.4.3 获取棋盘 9

1.5 棋子枚举类实现 9

1.6 游戏类实现 11

1.6.1 使用BufferedReader获取键盘输入 11

1.6.2 验证玩家输入字符串的合法性 12

1.6.3 判断输赢 13

1.6.4 “电脑”随机下棋 15

1.6.5 是否重新游戏 16

1.6.6 游戏过程实现 16

1.7 本章小结 18

第2章 仿Windows计算器 19

2.1 仿Windows计算器概述 20

2.1.1 数学符号与其他符号介绍 20

2.1.2 界面说明 21

2.2 流程描述 21

2.3 建立计算器对象 22

2.3.1 MyMath工具类 22

2.3.2 CalService类 23

2.3.3 CalFrame类 24

2.4 MyMath工具类实现 24

2.5 计算器主界面 25

2.5.1 初始化界面(initialize()方法) 26

2.5.2 创建运算键 28

2.5.3 创建操作按键 29

2.5.4 增加事件监听器 30

2.6 计算业务处理 31

2.6.1 计算四则运算结果 31

2.6.2 存储操作 33

2.6.3 实现开方、求倒数等 34

2.6.4 实现回退操作 35

2.6.5 清除计算结果 35

2.6.6 实现中转方法(callMethod) 35

2.7 本章小结 36

第3章 图片浏览器 37

3.1 图片浏览器概述 38

3.2 创建图片浏览器的相关对象 38

3.2.1 文件过滤器 39

3.2.2 文件对话框 39

3.2.3 主界面类 40

3.2.4 业务处理类 40

3.2.5 操作处理类 40

3.3 创建主界面 41

3.3.1 初始化界面(init()方法) 41

3.3.2 创建菜单栏 41

3.3.3 创建工具栏 43

3.4 实现图片浏览的操作 44

3.4.1 实现工具栏单击 44

3.4.2 实现菜单的单击 47

3.4.3 打开图片 48

3.4.4 放大或者缩小图片 49

3.4.5 浏览“上一张”或“下一张”图片 49

3.5 文件选择与过滤 50

3.6 本章小结 51

第4章 桌面弹球 52

4.1 桌面弹球概述 53

4.1.1 动画原理 53

4.1.2 小球反弹的方向 53

4.2 流程描述 54

4.3 创建游戏对象 54

4.3.1 基类BallComponent 55

4.3.2 砖块类(Brick) 56

4.3.3 道具类及其子类(Magic) 57

4.3.4 挡板类(Stick) 57

4.3.5 小球类(Ball) 57

4.3.6 业务处理类(BallService) 58

4.3.7 主界面类(BallFrame) 59

4.4 主界面实现 59

4.4.1 初始化界面(initialize()方法) 60

4.4.2 单态模式简介 61

4.4.3 运行效果 61

4.4.4 监听器与Timer 62

4.5 挡板、小球、砖块、道具 63

4.5.1 挡板(Stick类) 63

4.5.2 小球(Ball类) 65

4.5.3 道具(Magic及其子类) 66

4.5.4 砖块(Brick类) 67

4.6 BallService类实现 68

4.6.1 创建与设置砖块 68

4.6.2 设置挡板的位置(移动挡板) 70

4.6.3 小球与砖块碰撞 71

4.6.4 小球、道具与挡板碰撞 73

4.6.5 道具的移动 73

4.6.6 改变挡板的长度(道具的作用) 74

4.6.7 判断是否已经通关 75

4.7 功能改进设计 76

4.7.1 关卡 77

4.7.2 计分 77

4.7.3 道具 77

4.8 本章小结 78

第5章 单机俄罗斯方块 79

5.1 俄罗斯方块简介 80

5.2 建立界面 80

5.2.1 方块堆砌界面 80

5.2.2 游戏界面 80

5.3 创建游戏对象 82

5.3.1 设计小方块对象 82

5.3.2 设计大方块对象 83

5.4 创建与显示大方块 86

5.4.1 随机读取小方块图片 86

5.4.2 创建大方块对象 87

5.4.3 显示当前方块 89

5.5 处理方块的行为 91

5.5.1 方块变化 91

5.5.2 方块的左移和右移 93

5.5.3 方块下降 94

5.5.4 方块快速下降 95

5.5.5 判断是否停止下降 96

5.5.6 创建界面的二维数组 96

5.5.7 判断是否遇到障碍 98

5.5.8 方块结束下降 100

5.6 消除行、计分与级别的提升 100

5.6.1 消除行 100

5.6.2 加入分数计算与级别提升 102

5.7 游戏操作 103

5.7.1 游戏的暂停 103

5.7.2 游戏的继续 104

5.7.3 判断游戏失败 104

5.8 本章小结 104

第6章 仿Windows画图 105

6.1 画图软件概述 106

6.2 画图工具原理 106

6.2.1 画线 106

6.2.2 其他画图功能 107

6.2.3 保存图片功能 107

6.3 创建画图工具的各个对象 107

6.3.1 工具接口Tool 108

6.3.2 Tool的实现类AbstractTool 109

6.3.3 AbstractTool的子类 110

6.3.4 界面类ImageFrame 110

6.3.5 业务逻辑类ImageService 111

6.3.6 文件选择类ImageFileChooser 111

6.4 主界面实现 112

6.4.1 初始化界面(init()方法) 112

6.4.2 获取画板 114

6.4.3 创建菜单 114

6.4.4 创建画图工具栏 116

6.4.5 创建颜色选择面板 118

6.5 工具实现 119

6.5.1 实现拖动边框改变画布大小 120

6.5.2 实现父类的画图方法 121

6.5.3 鼠标移动时改变指针 122

6.5.4 记录鼠标按下的位置 123

6.5.5 重绘图片 123

6.5.6 铅笔工具 124

6.5.7 直线工具、矩形工具、椭圆工具和圆角矩形工具 124

6.5.8 多边形工具 126

6.5.9 刷子与橡皮擦 128

6.5.10 喷枪工具 129

6.6 ImageService类的实现 130

6.6.1 打开图片文件 130

6.6.2 保存图片 131

6.6.3 新建图片 132

6.6.4 颜色剪辑器 133

6.6.5 文件过滤 133

6.6.6 根据对菜单的单击调用相应的方法 134

6.6.7 判断图片是否已经保存 135

6.7 本章小结 135

第7章 单机连连看 136

7.1 连连看游戏简介 137

7.2 连连看游戏原理 137

7.3 创建游戏界面与游戏区域 137

7.3.1 创建游戏界面 137

7.3.2 游戏区域实现原理 138

7.3.3 创建图片方块对象 138

7.3.4 创建游戏处理类 140

7.3.5 图片的读取 140

7.3.6 创建游戏区域图片数组 143

7.3.7 根据数组画游戏区域 144

7.3.8 随机初始化游戏 145

7.4 实现连接程序 147

7.4.1 图片选择 147

7.4.2 创建连接的相关对象 149

7.4.3 准备获取通道的工具方法 151

7.4.4 没有转折点的横向连接 152

7.4.5 没有转折点的纵向连接 154

7.4.6 一个转折点的连接 155

7.4.7 两个转折点的连接 157

7.4.8 找出最短距离 162

7.4.9 画上连接线 164

7.5 加入计分与计时功能 165

7.5.1 加入计分功能 165

7.5.2 加入计时功能与游戏的胜利、失败 166

7.6 本章小结 168

第8章 简单Java IDE工具 169

8.1 IDE工具简介 170

8.2 Java IDE的主要功能 170

8.3 建立界面 170

8.3.1 建立主编辑区和信息显示区 171

8.3.2 建立项目显示区 172

8.3.3 添加菜单和工具栏 173

8.3.4 建立工作空间选择界面 176

8.3.5 建立文件、目录和项目添加界面 177

8.4 实现工作空间选择功能 178

8.4.1 实现目录选择功能 178

8.4.2 实现工作空间选择的确定按钮 181

8.5 创建项目树 182

8.5.1 创建树的各个对象 182

8.5.2 实现创建项目树的功能 184

8.5.3 设置树的外观 188

8.5.4 实现树节点的选择事件 190

8.6 实现文件操作功能 192

8.6.1 新建文件 192

8.6.2 新建目录 197

8.6.3 新建项目 198

8.6.4 策略模式 201

8.6.5 文件打开 201

8.6.6 显示行数与高亮 211

8.6.7 文件的保存功能 216

8.6.8 运行Java文件 221

8.7 实现文本操作 223

8.8 本章小结 223

第9章 图书进销存系统 224

9.1 项目简介 225

9.2 建立界面 225

9.2.1 登录界面 225

9.2.2 销售管理界面 225

9.2.3 入库管理界面 227

9.2.4 书本管理界面 227

9.2.5 种类管理界面 228

9.2.6 出版社管理界面 229

9.2.7 修改界面代码 230

9.3 设计系统数据库 233

9.3.1 设计出版社表 233

9.3.2 设计种类表 234

9.3.3 设计书表 234

9.3.4 设计入库记录表 235

9.3.5 设计销售记录表 236

9.4 开发前的准备工作 237

9.4.1 设计表的对应类 237

9.4.2 编写配置读取类 239

9.4.3 编写JDBC操作类 240

9.4.4 创建数据转换工具类 243

9.5 出版社管理功能 244

9.5.1 分层结构 244

9.5.2 获取全部出版社 245

9.5.3 模糊查询 248

9.5.4 查看出版社 250

9.5.5 新增出版社 252

9.5.6 修改出版社 255

9.6 书本管理功能 256

9.6.1 获取全部书 256

9.6.2 查看书本 258

9.6.3 新增书本 260

9.6.4 图片上传功能 261

9.7 销售管理功能 264

9.7.1 销售记录列表 264

9.7.2 查看交易记录 267

9.7.3 实现新增交易记录功能 270

9.8 本章小结 273

第10章 事务跟踪系统 274

10.1 确定系统需求 275

10.2 建立界面 275

10.2.1 登录界面 275

10.2.2 我的事务界面 276

10.2.3 事务的完成、暂时不做、不做的处理界面 277

10.2.4 事务转发界面 278

10.2.5 事务管理界面 278

10.2.6 新建事务界面 279

10.2.7 用户选择界面 280

10.2.8 用户管理界面 281

10.2.9 新建用户界面 282

10.3 开发准备 282

10.3.1 数据转换工具类 282

10.3.2 数据库执行类 284

10.3.3 DAO层的基类 285

10.3.4 值对象基类 285

10.4 用户管理 286

10.4.1 设计用户管理的相关对象 286

10.4.2 用户登录 287

10.4.3 查找全部用户 290

10.4.4 新增用户功能 292

10.4.5 删除用户 293

10.4.6 查询用户 293

10.5 事务管理 294

10.5.1 设计事务对象 294

10.5.2 根据发起人查找事务 295

10.5.3 新建事务 297

10.5.4 催办事务 298

10.5.5 将事务置为无效 300

10.6 我的事务 301

10.6.1 设计其他对象 301

10.6.2 将事务设为“暂时不做”状态 302

10.6.3 将事务置为“不做”状态 305

10.6.4 完成事务 306

10.6.5 转发事务 307

10.6.6 查看事务 308

10.6.7 查询事务 310

10.7 本章小结 311

第11章 多线程下载工具 312

11.1 多线程下载工具简介 313

11.2 建立下载工具的界面 313

11.2.1 主界面 313

11.2.2 导航树 314

11.2.3 资源列表 316

11.2.4 资源信息显示 318

11.2.5 新建下载任务界面 319

11.2.6 悬浮窗口 319

11.2.7 任务栏图标 322

11.3 设计下载的相关对象 322

11.3.1 资源状态对象 322

11.3.2 块对象 323

11.3.3 资源对象 324

11.3.4 上下文对象 327

11.4 下载资源 329

11.4.1 界面新增下载资源 329

11.4.2 建立下载线程 331

11.4.3 进行文件分割 333

11.4.4 文件合并 336

11.4.5 暂停下载 337

11.4.6 继续下载 337

11.5 保存下载信息 339

11.5.1 进行序列化保存对象 339

11.5.2 反序列化 340

11.6 其他操作 341

11.6.1 查看任务 341

11.6.2 删除任务 342

11.6.3 删除已经完成的任务 343

11.6.4 开始全部任务 343

11.6.5 暂停全部任务 344

11.6.6 节点的单击 344

11.6.7 打开/关闭主窗口 345

11.7 本章小结 345

第12章 邮件客户端 346

12.1 本章涉及的技术 347

12.1.1 JavaMail简介 347

12.1.2 SMTP简介 347

12.1.3 POP3简介 347

12.1.4 XStream简介 347

12.2 建立界面 348

12.2.1 登录界面 348

12.2.2 客户端主界面 348

12.2.3 配置界面 352

12.2.4 邮件编写界面 353

12.3 创建客户端的基础对象 354

12.3.1 创建邮箱上下文对象 355

12.3.2 创建邮件对象 356

12.4 用户登录与用户配置 358

12.4.1 实现用户登录 358

12.4.2 实现用户信息配置 360

12.5 接收邮件 362

12.5.1 接收邮件 362

12.5.2 获取邮件的正文 364

12.5.3 获取邮件的收件人 365

12.5.4 获取邮件的发件人 365

12.5.5 获取邮件的发送日期 366

12.5.6 获取邮件的大小 366

12.5.7 获取邮件的抄送地址 366

12.5.8 获取附件并存放到本地的目录中 367

12.5.9 将Message封装为Mail 368

12.5.10 对邮件进行排序 369

12.5.11 删除邮件服务器上的邮件 370

12.5.12 将Mail对象转换成XML文件并保存到本地目录中 371

12.5.13 在界面中显示邮件 372

12.5.14 编写任务调度器接收邮件 375

12.6 初始化界面数据 376

12.6.1 将XML文件转换为Mail对象 376

12.6.2 在各个Box间切换 378

12.7 操作邮件 380

12.7.1 查看邮件 380

12.7.2 查看附件 382

12.7.3 删除邮件 385

12.7.4 彻底删除邮件 385

12.7.5 还原邮件 386

12.8 发送邮件 387

12.8.1 实现发送邮件的功能 388

12.8.2 界面封装Mail对象进行发送 390

12.8.3 处理邮件附件 391

12.8.4 测试发送邮件功能 392

12.8.5 处理邮件的其他功能 393

12.9 本章小结 393

第13章 MySQL管理器 394

13.1 MySQL管理器原理 395

13.2 建立界面 395

13.2.1 MySQL安装目录选择界面 396

13.2.2 主界面 396

13.2.3 数据显示界面 401

13.2.4 创建连接界面 403

13.2.5 创建表界面 404

13.2.6 视图界面 407

13.2.7 存储过程界面 407

13.2.8 查询界面 408

13.2.9 树节点右键菜单 408

13.2.10 数据列表右键菜单 408

13.3 实现MySQL安装目录选择功能 410

13.3.1 实现目录选择 410

13.3.2 读取和保存安装目录路径 411

13.3.3 读取连接信息 411

13.4 连接管理 413

13.4.1 创建连接节点 413

13.4.2 打开连接 414

13.4.3 新建连接 417

13.4.4 删除连接 419

13.4.5 关闭连接 420

13.5 数据库管理 420

13.5.1 打开数据库 421

13.5.2 新建数据库 422

13.5.3 删除数据库 423

13.5.4 关闭数据库 423

13.6 视图管理 424

13.6.1 读取视图列表 424

13.6.2 新建视图 426

13.6.3 修改视图与删除视图 427

13.7 存储过程与函数管理 427

13.7.1 新增存储过程和函数 427

13.7.2 修改存储过程与函数 428

13.8 表管理 429

13.8.1 新字段 430

13.8.2 插入字段与删除字段 431

13.8.3 编辑字段 432

13.8.4 设置默认值与自动增长 434

13.8.5 新外键 435

13.8.6 删除一个外键 436

13.8.7 查询字段信息 436

13.8.8 查询外键信息 437

13.8.9 新建表 439

13.8.10 修改表 440

13.8.11 删除表 442

13.9 数据浏览 442

13.9.1 浏览数据 443

13.9.2 刷新数据 445

13.9.3 数据排序 445

13.10 执行SQL语句 446

13.10.1 运行SQL语句 446

13.10.2 保存SQL语句 447

13.11 SQL文件的导入与导出 447

13.11.1 执行SQL文件 447

13.11.2 导出数据库与表 448

13.12 本章小结 449

第14章 自己开发IoC容器 450

14.1 IoC简介 451

14.2 使用技术简介 451

14.2.1 Java反射简介 451

14.2.2 Dom4j 452

14.2.3 JUnit 452

14.3 确定配置文件内容、编写DTD 452

14.3.1 声明bean 452

14.3.2 声明单态的bean 453

14.3.3 声明延迟加载 453

14.3.4 声明设值注入到bean的属性 453

14.3.5 声明构造注入到bean的属性 454

14.3.6 自动装配 455

14.3.7 准备DTD文件 455

14.4 读取XML文件 457

14.4.1 加载XML文件 457

14.4.2 读取Element 460

14.4.3 解析Element 462

14.4.4 实现isLazy方法 464

14.4.5 实现getConstructorElements方法 465

14.4.6 实现getAttribute和isSingleton方法 465

14.4.7 实现getAutowire方法 466

14.4.8 实现getConstructorValue和getPropertyValue方法 466

14.5 使用构造注入创建实例 468

14.5.1 构造注入简介 468

14.5.2 使用无参数的构造器创建实例 468

14.5.3 使用有参数的构造器创建实例 469

14.6 实现设值注入 473

14.6.1 实现非自动装配的设值注入 473

14.6.2 实现根据名字自动装配 478

14.7 实现IoC容器 480

14.7.1 定义接口方法 481

14.7.2 实现containsBean方法和isSingleton方法 482

14.7.3 实现getBean方法 483

14.7.4 为AbstractApplicationContext添加子类 488

14.7.5 测试IoC容器的创建 490

14.8 IoC与图书进销存系统的整合 495

14.8.1 需要管理的对象 495

14.8.2 创建数据访问层的bean 496

14.8.3 创建业务层的bean 497

14.8.4 创建视图层的bean 499

14.9 本章小结 502

第15章 仿QQ游戏大厅 503

15.1 游戏大厅简介 504

15.2 编写游戏大厅框架 504

15.2.1 确定传输格式 504

15.2.2 建立处理类接口 506

15.2.3 建立玩家类与游戏接口 506

15.2.4 编写框架服务器 507

15.2.5 编写框架客户端 509

15.2.6 建立登录界面 509

15.2.7 实现登录功能 511

15.3 建立五子棋游戏大厅 512

15.3.1 编写游戏大厅的对象 512

15.3.2 服务器创建游戏大厅数组 514

15.3.3 玩家进入游戏大厅 515

15.3.4 创建游戏大厅界面 516

15.3.5 创建玩家列表与聊天界面 519

15.3.6 使用服务器的数据创建游戏大厅 520

15.4 实现聊天功能 522

15.4.1 发送聊天信息 522

15.4.2 接收聊天信息 524

15.5 启动游戏 524

15.5.1 建立游戏界面 525

15.5.2 玩家坐下 526

15.5.3 实现游戏聊天 531

15.6 开始游戏 532

15.6.1 游戏准备 532

15.6.2 玩家下棋 536

15.6.3 逃跑与认输 539

15.6.4 请求和棋 540

15.7 五子棋游戏大厅总结 541

15.8 编写一个测试聊天室 542

15.8.1 建立聊天室界面 542

15.8.2 实现聊天室 543

15.8.3 将聊天室放置到框架中测试 543

15.9 本章小结 544

返回顶部