标题：Java开发入门及项目实战
作者：明日科技
图书详细信息：ISBN：  [1]9787302276623
定价：49.8元
印次：1-1
装帧：平装
印刷日期：2011-12-28图书简介：本书系统全面地介绍了使用Java语言进行编程的各种技术，从初学者的角度出发，科学合理地设计全书内容，是学习Java编程技术的完美教程。全书共分3篇18章，第1篇为入门篇，主要包括Java语言概述、Eclipse开发工具、Java语言基础、流程控制、数组、面向对象入门、面向对象进阶、字符串与包装类等内容；第2篇为提高篇，主要包括Java集合类框架、常用数学工具类、优雅地错误处理、输入/输出、枚举类型与泛型、Swing入门、多线程、网络通信、数据库操作等内容；第3篇为应用篇，介绍企业人事管理系统项目开发的全过程。
本书提供了大量的自学视频、源程序、素材，提供了相关的模块库、案例库、素材库、题库等多种形式的辅助学习资料，还提供迅速及时的微博、QQ、论坛等技术支持。
本书内容详尽，实例丰富，非常适合作为零基础学习人员的学习用书和大中专院校师生的学习教材，也适合作为相关培训机构的师生和软件开发人员的参考资料。前言：欢迎来到Java的世界，本书内容反映了Java语言的最新变化，其编排方式很适合学习和讲授这门语言。
Java语言具有面向对象、跨平台及可移植性好等特点，在近几年的计算机语言排行榜中，其一直名列榜首。很多手提电话和商务助理等电子产品都可以运行Java程序，此外，Java还可以开发强大的桌面应用程序、Web应用程序、分布式系统和嵌入式应用程序等，这使其成为应用范围最广的开发语言。
本书内容
本书提供了Java编程从入门到项目开发所必备的知识，并且分篇进行讲解，内容安排更有针对性。学习本书内容时，读者首先要熟练掌握入门篇的所有内容，以便为以后的应用开发打下扎实的基础；然后可以有针对性地学习提高篇的内容，为开发专业软件项目储备知识；最后，通过学习一个项目的完整开发过程，为以后的实际项目开发积累经验。学习本书内容时，各篇内容需要花费的精力比例如下图所示。
第1篇　入门篇（第1～8章）：主要包括Java语言概述、Eclipse开发工具、Java语言基础、流程控制、数组、面向对象入门、面向对象进阶、字符串与包装类等内容。通过本篇的学习，读者能够熟练掌握Java语言编程的基础知识。
第2篇　提高篇（第9～17章）：主要包括Java集合类框架、常用数学工具类、优雅地错误处理、输入/输出、枚举类型与泛型、Swing入门、多线程、网络通信、数据库操作等内容。通过本篇的学习，读者可以开发常用的数据库应用程序，并掌握Java高级应用程序的开发，如使用文件流、网络和多线程等知识开发综合应用程序。
第3篇　应用篇（第18章）：本篇通过一个大型、完整的企业人事管理系统，运用软件工程的设计思想，讲解如何进行软件项目的实践开发。书中按照编写项目计划书→系统设计→数据库设计→创建项目→实现项目→运行项目→系统打包部署→解决开发常见问题的过程进行介绍，带领读者一步步亲身体验开发项目的全过程。
本书特点
* 技术新颖，讲解细致
本书以最新的JDK技术为标准来讲解技术，向读者介绍Java学习中必须掌握的多方面内容。讲解内容细致，并配以大量的实例。
* 实例丰富，贴近实际
对每个技术点进行详细讲解时，均提供了大量的示例和实例进行演示，这些示例和实例大部分来源于实际开发。读者可以学为所用，快速提升开发技能，并有效解决实际开发中遇到的各类问题。
* 动手实践，一体学习
每章都提供了大量的上机演练和实战模拟，使读者在学习技术的同时，能够亲自动手实践，体验编程带来的成就感；另外，上机演练和实战模拟的详细讲解及源码与《Java经典编程300例》中的实例相对应，读者可以根据自身实际情况进行参考。
* 注释详尽，视频讲解
为了便于读者更好地学习和使用本书，书中所有的代码都提供了详尽的注释。而且，本书配套资源提供了覆盖全书的语音讲解视频，读者可以通过视频快速、直观、轻松地学习。
本书配套资源
本书提供了内容丰富的配套资源，包括源程序、素材，以及模块库、案例库、题库、素材库等多项辅助内容，读者朋友可以通过如下方式获取。
第1种方式：
（1）登录清华大学出版社的网站，在网页右上角的搜索文本框中输入本书书名（注意区分大小写和留出空格），或者输入本书关键字，或者输入本书ISBN号（注意去掉ISBN号间隔线“-”），单击“搜索”按钮。
（2）找到本书后单击超链接，在该书的网页下侧单击“网络资源”超链接，即可下载。
第2种方式：
访问本书的新浪微博Javamrbook，找到配套资源的链接地址进行下载。
读者对象
本书非常适合以下人员阅读。
? 大中专院校师生    ? 面临就业的学生
? 零基础学习人员    ? 相关培训机构的老师和学员
? 初中级程序开发人员   ? 准备从事软件开发的求职者
? 编程爱好者     ? 立志编程的其他专业人士目录：第1篇　入门篇
第1章　Java语言概述
（ 自学视频、源程序：
配套资源\mr\01\） 2
1.1　Java语言概述 3
1.1.1　Java语言历史 3
1.1.2　Java语言的现状 3
1.1.3　Java语言的面向对象特性 3
1.2　JDK的下载、安装及配置 5
1.2.1　下载JDK 5
1.2.2　安装JDK 8
1.2.3　配置JDK 11
1.2.4　测试开发环境 12
1.3　第一个Java程序 13
1.4　本章小结 16
1.5　技能专项测试 16
1.6　实战模拟 17
第2章　Eclipse开发工具
（ 自学视频、源程序：
配套资源\mr\02\） 19
2.1　Eclipse简介 20
2.2　Eclipse的安装与汉化 20
2.2.1　下载Eclipse 20
2.2.2　安装Eclipse 22
2.2.3　启动Eclipse 23
2.2.4　汉化Eclipse 24
2.3　第一个Java项目 28
2.3.1　创建Java项目 28
2.3.2　创建类文件 29
2.3.3　编写程序代码 29
2.3.4　运行Java程序 30
2.4　本章小结 31
2.5　技能专项测试 31
2.6　实战模拟 32
第3章　Java语言基础
（ 自学视频、源程序：
配套资源\mr\03\） 33
3.1　Java类的结构 34
3.1.1　Java包的声明 34
3.1.2　Java类的定义 35
3.1.3　类中的变量和常量 35
3.1.4　类中的方法 39
3.2　Java中的注释 40
3.2.1　单行注释 40
3.2.2　多行注释 40
3.2.3　文档注释 41
3.3　基本数据类型 41
3.3.1　整数类型 42
3.3.2　浮点类型 43
3.3.3　字符类型 43
3.3.4　布尔类型 45
3.4　常见运算符 45
3.4.1　赋值运算符 46
3.4.2　算术运算符 47
3.4.3　自增、自减运算符 48
3.4.4　比较运算符 48
3.4.5　逻辑运算符 49
3.4.6　位运算符 50
3.4.7　三元运算符 52
3.4.8　运算符的优先级 53
3.5　数据类型转换 54
3.5.1　隐式类型转换 54
3.5.2　显式类型转换 56
3.6　编码规范 56
3.7　Java编程的常见错误 57
3.7.1　语义错误 57
3.7.2　语法错误 58
3.8　本章小结 59
3.9　技能专项测试 59
3.10　实战模拟 61
第4章　流程控制
（ 自学视频、源程序：
配套资源\mr\04\） 62
4.1　条件语句 63
4.1.1　if条件语句 63
4.1.2　if-else语句 64
4.1.3  switch语句 66
4.2　循环语句 69
4.2.1　while语句 69
4.2.2　do-while语句 71
4.2.3  for语句 72
4.3　跳转语句 75
4.3.1　break语句 75
4.3.2　continue语句 76
4.3.3　return语句 77
4.4　本章小结 78
4.5　技能专项测试 78
4.6　实战模拟 80
第5章　数组
（ 自学视频、源程序：
配套资源\mr\05\） 82
5.1　数组概述 83
5.2　一维数组的创建及使用 83
5.2.1　创建一维数组 83
5.2.2　初始化一维数组 85
5.2.3　使用一维数组 85
5.3　二维数组的创建及使用 86
5.3.1　二维数组的创建 87
5.3.2　二维数组初始化 88
5.3.3　使用二维数组 88
5.4　数组的基本操作 90
5.4.1　遍历数组 90
5.4.2　填充替换数组元素 91
5.4.3　对数组进行排序 93
5.4.4　复制数组 94
5.4.5　数组查询 95
5.5　本章小结 99
5.6　技能专项测试 99
5.7　实战模拟 101
第6章　面向对象入门
（ 自学视频、源程序：
配套资源\mr\06\） 102
6.1　面向对象基本概念 103
6.1.1　什么是对象 103
6.1.2　什么是类 104
6.1.3　什么是封装 105
6.1.4　什么是继承 105
6.1.5　什么是多态 106
6.2　类和对象 107
6.2.1　类的定义 107
6.2.2　成员变量的定义 108
6.2.3　普通方法的定义 109
6.2.4　局部变量的定义 109
6.2.5　构造方法的定义 110
6.2.6　方法参数的传递 111
6.2.7　对象创建和使用 113
6.2.8　this关键字的用途 116
6.2.9　访问权限修饰符 117
6.2.10　static关键字的用途 117
6.2.11　final关键字的用途 118
6.2.12　包的定义与使用 119
6.3　注解 121
6.3.1　预定义注解 121
6.3.2　自定义注解 121
6.4　本章小结 122
6.5　专项技能测试 122
6.6　实战模拟 125
第7章　面向对象进阶
（ 自学视频、源程序：
配套资源\mr\07\） 126
7.1　接口的使用 127
7.1.1　接口的定义 127
7.1.2　接口的实现 127
7.2　类的继承 130
7.2.1　继承的实现 131
7.2.2　继承中的重写 131
7.2.3　使用super关键字 133
7.3　抽象类的使用 135
7.4　多态 137
7.5　内部类 139
7.5.1　成员内部类 139
7.5.2　局部内部类 142
7.5.3　匿名内部类 143
7.5.4　静态内部类 145
7.5.5　内部类的继承 146
7.6　Class类与Java反射 147
7.6.1　访问构造方法 148
7.6.2　访问成员变量 151
7.6.3　访问方法 153
7.7　本章小结 156
7.8　技能专项测试 156
7.9　实战模拟 158
第8章　字符串与包装类
（ 自学视频、源程序：
配套资源\mr\08\） 160
8.1　String类的常用方法 161
8.1.1　String类概述 161
8.1.2　String类常用方法 161
8.1.3　正则表达式 175
8.2　整数类型包装类 177
8.2.1　Integer 177
8.2.2  Short 180
8.2.3  Long 181
8.2.4　Byte 183
8.3  浮点类型包装类 184
8.3.1　Float 184
8.3.2  Double 185
8.4  字符和布尔类型包装类 186
8.4.1　Character 186
8.4.2  Boolean 188
8.5　本章小结 189
8.6　技能专项测试 189
8.7　实战模拟 191
第2篇　提高篇
第9章　Java集合类框架
（ 自学视频、源程序：
配套资源\mr\09\） 194
9.1　集合框架概述 195
9.2　Collection和Map接口 195
9.2.1  List接口的常用方法 195
9.2.2  Set接口的常用方法 197
9.2.3  Map接口的常用方法 199
9.3　List接口的实现类 200
9.4　Set接口的实现类 202
9.5　Map接口的实现类 204
9.6　迭代器的获得与使用 206
9.7　本章小结 208
9.8　技能专项测试 208
9.9　实战模拟 209
第10章　常用数学工具类
（ 自学视频、源程序：
配套资源\mr\10\） 210
10.1  常见的数学运算 211
10.1.1　求三角函数 211
10.1.2  计算指数、对数和方根 212
10.1.3  取整和舍入 213
10.1.4  获得最大值、最小值和绝对值 214
10.1.5  生成随机数 215
10.2　高精度数学类 219
10.2.1  高精度整数类BigInteger 219
10.2.2  高精度浮点数类
BigDecimal 221
10.3　数字的格式化 223
10.4  本章小结 226
10.5  技能专项测试 226
10.6　实战模拟 228
第11章　优雅地错误处理
（ 自学视频、源程序：
配套资源\mr\11\） 229
11.1　Java异常概述 230
11.2　异常的分类 231
11.2.1　可控式异常 231
11.2.2　运行时异常 232
11.3　异常的捕获 234
11.3.1　错误 234
11.3.2　捕获异常 234
11.4　异常的抛出 236
11.4.1　使用throws声明抛出
异常 237
11.4.2　使用throw语句抛出异常 237
11.5　常见的异常类型 239
11.6　自定义异常 240
11.7  本章小结 241
11.8  技能专项测试 242
11.9　实战模拟 243
第12章　输入/输出
（ 自学视频、源程序：
配套资源\mr\12\） 244
12.1　流概述 245
12.2　输入/输出流 245
12.2.1　输入流 245
12.2.2  输出流 247
12.3  File类 249
12.3.1  文件的创建与删除 249
12.3.2　获取文件信息 250
12.4  文件输入/输出流 253
12.4.1　FileInputStream与
FileOutputStream类 253
12.4.2　FileReader类和FileWriter类 254
12.5　带缓存的输入/输出流 257
12.5.1  BufferedInputStream与
BufferedOutputStream类 257
12.5.2　BufferedReader与
BufferedWriter类 258
12.6　数据输入/输出流 260
12.7　ZIP压缩输入/输出流 261
12.7.1  压缩文件 262
12.7.2  解压缩ZIP文件 263
12.8　本章小结 265
12.9　技能专项测试 266
12.10　实战模拟 267
第13章　枚举类型与泛型
（ 自学视频、源程序：
配套资源\mr\13\） 269
13.1  枚举类型 270
13.1.1  使用枚举类型设置常量 270
13.1.2　深入了解枚举类型 272
13.1.3  使用枚举类型的优势 277
13.2  泛型 278
13.2.1　回顾“向上转型”与
“向下转型” 278
13.2.2　定义泛型类 279
13.2.3　泛型的常规用法 280
13.2.4　泛型的高级用法 283
13.2.5　泛型总结 286
13.3  本章小结 287
13.4  技能专项测试 287
13.5  实战模拟 288
第14章　Swing入门
（ 自学视频、源程序：
配套资源\mr\14\） 289
14.1  Swing概述 290
14.1.1　Swing特点 290
14.1.2  Swing包 290
14.1.3　常用Swing组件概述 291
14.2  常用窗体 291
14.2.1　JFrame窗体 291
14.2.2  JDialog 293
14.3  标签组件与图标 295
14.3.1  在窗体中添加标签 296
14.3.2  在窗体中添加图标 297
14.4　常用布局管理器 300
14.4.1　流（FlowLayout）布局管理器 300
14.4.2　边界（BorderLayout）布局管理器 301
14.4.3　网格（GridLayout）布局管理器 303
14.4.4  绝对布局管理器 304
14.5　常用面板 306
14.5.1  JPanel面板 306
14.5.2  JScrollPane面板 307
14.6　按钮组件 308
14.6.1　普通按钮（JButton）
组件 308
14.6.2　单选按钮（JRadioButton）组件 309
14.6.3　复选框（JCheckBox）
组件 311
14.7　列表组件 313
14.7.1　下拉列表框（JComboBox）组件 313
14.7.2　列表框（JList）组件 314
14.8  文本组件 317
14.8.1  文本框（JTextField）
组件 317
14.8.2  密码框（JPasswordField）组件 318
14.8.3  文本域（JTextArea）
组件 318
14.9  常用事件监听器 320
14.9.1  监听事件简介 320
14.9.2  动作事件（ActionEvent）监听器 320
14.9.3  焦点事件（FocusEvent）监听器 321
14.10  本章小结 323
14.11　技能专项测试 323
14.12  实战模拟 324
第15章　多线程
（ 自学视频、源程序：
配套资源\mr\15\） 325
15.1　线程简介 326
15.2  Java实现线程的两种方式 326
15.2.1  继承Thread类 327
15.2.2  实现Runable接口 328
15.3　线程的生命周期 331
15.4  操作线程的方法 332
15.4.1  线程的休眠 332
15.4.2  线程的挂起 333
15.4.3  线程的中断 335
15.4.4  线程的礼让 337
15.5　线程的优先级 338
15.6  线程同步 340
15.6.1  线程安全 340
15.6.2  线程同步机制 342
15.7　线程间的通信 344
15.8　本章小结 347
15.9　技能专项测试 347
15.10  实战测试 349
第16章　网络通信
（ 自学视频、源程序：
配套资源\mr\16\） 351
16.1  网络程序设计基础 352
16.1.1  局域网与互联网 352
16.1.2  网络协议 352
16.1.3  端口和套接字 353
16.2  TCP程序设计基础 354
16.2.1　InetAddress类 355
16.2.2  ServerSocket类 356
16.2.3  TCP网络程序 357
16.3  UDP程序设计基础 361
16.3.1  DatagramPacket类 361
16.3.2  DatagramSocket类 361
16.3.3  UDP网络程序 362
16.4  本章小结 365
16.5  技能专项测试 365
16.6　实战模拟 366
第17章　数据库操作
（ 自学视频、源程序：
配套资源\mr\17\） 368
17.1　数据库基础知识 369
17.1.1  什么是数据库 369
17.1.2  数据库的种类及功能 369
17.2　JDBC技术 370
17.2.1　什么是JDBC技术 370
17.2.2　为什么要在项目中添加数据库驱动 371
17.3　JDBC中常用的类与接口 371
17.3.1　Connection接口 371
17.3.2  Statement接口 372
17.3.3  PreparedStatement接口 372
17.3.4  DriverManager类 373
17.3.5  ResultSet接口 373
17.4  数据库操作 374
17.4.1  连接数据库 375
17.4.2  向数据库发送SQL语句 377
17.4.3  处理查询结果集 377
17.4.4  添加数据 377
17.4.5  删除数据 378
17.4.6  修改数据 379
17.4.7  查询数据 380
17.4.8  使用预编译语句 381
17.4.9  模糊查询 383
17.5  本章小结 385
17.6  技能专项测试 385
17.7  实战模拟 386
第3篇　应用篇
第18章　企业人事管理系统
（ 自学视频、源程序：
配套资源\mr\18\） 390
18.1  开发背景 391
18.2  系统分析 391
18.3  系统设计 391
18.3.1  系统目标 391
18.3.2  系统功能结构 391
18.3.3  系统预览 392
18.4  数据库设计 394
18.4.1  数据库分析 394
18.4.2  数据库概念设计 394
18.5  主窗体设计 395
18.5.1  导航栏的设计 396
18.5.2  工具栏的设计 397
18.6  公共模块设计 400
18.6.1  编写Hibernate配置文件 400
18.6.2  编写Hibernate持久化类和映射文件 400
18.6.3  编写通过Hibernate操作持久化对象的常用方法 401
18.6.4  创建用于特殊效果的部门树对话框 402
18.7  人事管理模块设计 404
18.7.1  人事管理模块功能概述 404
18.7.2  人事管理模块技术分析 405
18.7.3  人事管理模块实现过程 405
18.8  待遇管理模块设计 409
18.8.1　待遇管理模块功能概述 409
18.8.2  待遇管理模块技术分析 410
18.8.3  待遇管理模块实现过程 410
18.9  开发问题解析 414
18.10  Hibernate关联关系的建立方法 415
18.10.1  建立一对一关联 415
18.10.2  建立一对多关联 416