《Java编程兵书》PDF下载

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

第一篇 环境准备篇 2

第1章 初出茅庐:走进Java 2

1.1 Java是什么 2

1.2 Java历史背景 2

1.3 Java平台的3个版本 2

1.4 Java语言特点 2

1.5 Java类库概述 3

1.6 Java的工作方式 4

1.7 Java语言的前景 4

1.8 小结 5

1.9 习题 5

第2章 拨云见日:Java语言的环境配置 7

2.1 操作系统要求 7

2.2 下载与安装JDK 7 7

2.2.1 JDK 7的下载 7

2.2.2 JDK 7的安装 9

2.2.3 设置环境变量 10

2.2.4 测试环境变量是否配置成功 12

2.3 第一个Java程序——HelloWorld 12

2.3.1 编写HelloWorld 12

2.3.2 编译运行 13

2.3.3 分析结构 14

2.4 小结 14

2.5 习题 14

第3章 见龙在田:开发工具介绍 17

3.1 UltraEdit和EditPlus编辑器 17

3.2 集成开发工具介绍 17

3.2.1 JBuilder简介 17

3.2.2 NetBeans简介 17

3.2.3 Eclipse简介 17

3.2.4 下载Eclipse 18

3.3 使用Eclipse开发第一个程序——HelloWorld 19

3.4 小结 22

3.5 习题 23

第二篇 Java语法篇 25

第4章 稳扎马步:Java编程基础 25

4.1 注释 25

4.2 标识符和关键字 26

4.2.1 命名标识符的规则 26

4.2.2 关键字 26

4.3 变量和常量 27

4.3.1 变量 27

4.3.2 常量 27

4.4 数据基本类型 28

4.4.1 整型 28

4.4.2 浮点型 29

4.4.3 字符型 29

4.4.4 逻辑型 30

4.5 数据类型之间的转换 30

4.5.1 自动类型转换 31

4.5.2 强制类型转换 31

4.6 JAVA中的运算符 32

4.6.1 算术运算符 32

4.6.2 关系运算符 34

4.6.3 逻辑运算符 34

4.6.4 赋值运算符 35

4.6.5 位运算符 35

4.6.6 移位运算符 37

4.6.7 三元运算符 38

4.6.8 对象运算符 39

4.7 运算符的优先级 39

4.8 Java语言的编码规范 40

4.8.1 语法规范 40

4.8.2 代码编写规范 40

4.9 本章知识点综合应用 41

4.9.1 转换基本数据类型 41

4.9.2 Java的运算符 43

4.10 小结 50

4.11 习题 50

第5章 白鹤亮翅:程序控制语句 52

5.1 条件语句 52

5.1.1 if语句 52

5.1.2 switch语句 55

5.1.3 if与switch的区别 56

5.2 循环语句 57

5.2.1 for循环结构 57

5.2.2 while循环结构 58

5.2.3 do-while循环结构 59

5.2.4 while与do-while的区别 60

5.3 break和continue语句 61

5.3.1 break语句 61

5.3.2 continue语句 62

5.3.3 break与continue的区别 63

5.4 本章知识点综合应用 63

5.4.1 控制程序的流程 63

5.4.2 计算阶乘 66

5.5 小结 67

5.6 习题 67

第6章 知己知彼:面向对象程序设计 69

6.1 面向对象的基本概念 69

6.1.1 面向过程与和面向对象的程序设计 69

6.1.2 对象和封装 69

6.1.3 类和实例 70

6.2 类 71

6.2.1 类的定义 71

6.2.2 成员变量 72

6.2.3 成员方法 74

6.2.4 构造方法 76

6.2.5 main()方法 76

6.2.6 参数的传递 77

6.2.7 类对象的创建、使用和清除 78

6.3 包 80

6.3.1 包的作用 80

6.3.2 包的定义 80

6.3.3 运行包中的类 81

6.3.4 引入包中的类 81

6.4 类中变量和方法的访问权限 82

6.4.1 公有类型变量和方法 83

6.4.2 受保护类型变量和方法 83

6.4.3 私有类型变量和方法 84

6.5 类的继承 85

6.5.1 继承的概念 86

6.5.2 继承的实现——创建子类 86

6.5.3 继承数据成员和方法 87

6.5.4 覆盖 88

6.5.5 继承中要注意的问题 90

6.6 类的多态性 90

6.7 抽象类 92

6.7.1 抽象类的定义 92

6.7.2 抽象类实例 92

6.8 接口 93

6.8.1 接口的定义 93

6.8.2 接口的使用 94

6.8.3 接口的继承 95

6.9 内部类 96

6.9.1 匿名类(anonymous class) 96

6.9.2 静态类(static class) 97

6.9.3 成员类(member class) 97

6.9.4 局部类(local class) 98

6.10 类相关关键字 99

6.10.1 this关键字 99

6.10.2 static修饰符 99

6.10.3 final修饰符 101

6.10.4 super关键字 103

6.11 本章知识点综合应用 104

6.11.1 Java的参数传递 104

6.11.2 自定义形状类 105

6.11.3 方法和变量在继承时的覆盖与隐藏 110

6.12 小结 114

6.13 习题 114

第7章 稳扎稳打:数组 116

7.1 一维数组 116

7.1.1 一维数组的声明 116

7.1.2 一维数组的创建 116

7.1.3 一维数组的初始化 116

7.1.4 一维数组元素的使用 117

7.1.5 一维数组元素的默认值 118

7.2 二维数组 119

7.2.1 二维数组声明 119

7.2.2 二维数组的创建 119

7.2.3 二维数组的初始化 120

7.2.4 二维数组的遍历 120

7.3 数组的相关操作 121

7.3.1 数组长度 121

7.3.2 数组填充 121

7.3.3 数组复制 122

7.3.4 数组比较 123

7.4 数组排序 123

7.4.1 sort函数排序 123

7.4.2 冒泡排序 124

7.5 本章知识点综合应用 125

7.5.1 使用Arrays 125

7.5.2 求质数 127

7.5.3 动态调整数组长度 129

7.6 小结 130

7.7 习题 131

第8章 借花献佛:集合 133

8.1 Java集合框架 133

8.2 Collection接口 133

8.2.1 转换构造方法 133

8.2.2 Collection接口的定义 133

8.2.3 Collection接口的基本操作 134

8.2.4 遍历Collection接口 134

8.2.5 Collection接口的批量操作 135

8.2.6 Collection接口的数组操作 136

8.3 Set接口 136

8.3.1 Set接口的定义 136

8.3.2 Set接口的基本操作 137

8.3.3 Set接口的批量操作 138

8.3.4 Set接口的数组操作 139

8.4 List接口 139

8.4.1 List接口的定义 140

8.4.2 从Collection继承的操作 140

8.4.3 按位置访问和查找操作 141

8.4.4 List迭代方法 142

8.5 Map接口 143

8.5.1 Map接口的定义 143

8.5.2 Map接口的基本操作 144

8.5.3 Map接口的批量操作 145

8.6 实现 145

8.6.1 实现的类型 146

8.6.2 Set接口的实现 147

8.6.3 List接口的实现 148

8.6.4 Map接口的实现 148

8.7 本章知识点综合应用 149

8.7.1 ArrayList、Vector和LinkedList 149

8.7.2 对List排序 154

8.7.3 对Map排序 156

8.8 小结 158

8.9 习题 158

第9章 点石成金:字符串处理 160

9.1 字符类 160

9.1.1 Character字符包装器类 160

9.1.2 转义字符序列 161

9.1.3 常用构造函数 161

9.1.4 字符的比较 162

9.1.5 取字符对象的值 162

9.2 字符串String 163

9.2.1 字符串声明与赋值 163

9.2.2 常用构造函数 163

9.2.3 获取字符串长度 165

9.3 字符串常用操作 166

9.3.1 字符串连接 166

9.3.2 字符串比较 167

9.3.3 字符串截取 168

9.3.4 字符串查找 169

9.3.5 字符串大小写转换 170

9.3.6 字符串内容的替换 171

9.3.7 获取字符串某位置的字符 172

9.4 字符串其他操作 172

9.5 字符串数组 173

9.5.1 字符串数组的构造函数 174

9.5.2 字符串数组的属性及常用方法 174

9.6 字符串缓存类StringBuffer 175

9.6.1 常用构造函数 175

9.6.2 字符串缓存与字符串的转化 176

9.6.3 字符串缓存扩充 177

9.6.4 字符串缓存插入 177

9.7 字符串缓存的其他操作 178

9.8 字符串标记类 179

9.8.1 常用构造函数 179

9.8.2 常用方法 179

9.9 本章知识点综合应用 180

9.9.1 使用String 180

9.9.2 基本数据类型与字符串的转化 184

9.9.3 使用StringBuffer 186

9.10 小结 190

9.11 习题 190

第三篇 Java编程提高篇 192

第10章 云行雨施:Java Swing编程 192

10.1 Swing的特点 192

10.2 Swing容器 192

10.2.1 JFrame容器 192

10.2.2 JPanel容器 195

10.3 创建图形界面程序 196

10.4 Swing常用组件 197

10.4.1 按钮组件JButton 197

10.4.2 复选框组件JCheckBox 198

10.4.3 单选按钮组件JRadioButton 198

10.4.4 文本框组件JTextField 198

10.4.5 密码框组件JPasswordField 199

10.4.6 组合框组件JComboBox 199

10.4.7 滑块组件JSlider 199

10.4.8 微调组制组件JSpinner 199

10.4.9 菜单组件JMenu 200

10.5 不可编辑的信息显示组件 200

10.5.1 标签组件JLabel 200

10.5.2 进度条组件JProgressBar 201

10.5.3 工具提示组件JToolTip 201

10.6 Swing高级组件 202

10.6.1 颜色选择器JColorChooser 202

10.6.2 文件选择器JFileChooser 202

10.6.3 文本编辑组件JEditorPane和JTextPane 203

10.6.4 文本区组件JTextArea 204

10.6.5 表组件JTable 204

10.6.6 树组件JTree 205

10.6.7 面板组件JPanel 206

10.6.8 滚动面板JScrollPane 207

10.6.9 拆分面板JSplitPane 207

10.6.10 选项卡面板JTabbedPane 208

10.6.11 工具栏JToolBar 208

10.7 本章知识点综合应用 209

10.7.1 一个圆形的按钮 209

10.7.2 捕捉屏幕 211

10.7.3 缩放图片 214

10.8 小结 219

10.9 习题 219

第11章 十拿九稳:标准布局 222

11.1 标准布局管理器简介 222

11.1.1 BorderLayout边框布局 222

11.1.2 BoxLayout盒状布局 223

11.1.3 CardLayout卡片布局 224

11.1.4 FlowLayout流动布局 225

11.1.5 GridLayout网格布局 226

11.1.6 GridBagLayout网格包布局 227

11.2 使用布局管理器技巧 228

11.2.1 设置布局管理器 228

11.2.2 向容器中添加组件 229

11.2.3 提供组件大小和排列策略 229

11.2.4 设置组件之间的间隙 229

11.2.5 设置容器的语言方向 230

11.3 本章知识点应用 231

11.3.1 设计用户登录界面 231

11.3.2 日历 235

11.4 小结 241

11.5 习题 242

第12章 料事如神:Java异常处理 244

12.1 Java中的异常 244

12.2 异常处理 245

12.2.1 tyy语句 246

12.2.2 catch语句 247

12.2.3 异常类型 247

12.2.4 异常处理原则 248

12.3 Throwable类 249

12.3.1 Throwable类的定义和方法 249

12.3.2 异常类的继承关系 250

12.3.3 使用throws抛出异常 251

12.3.4 使用throw抛出异常 252

12.3.5 运行期异常 252

12.4 自定义异常 253

12.4.1 创建自定义异常类 253

12.4.2 处理自定义异常 254

12.5 finally子句 255

12.6 异常的几个问题 256

12.6.1 异常丢失 256

12.6.2 构造函数中的异常处理 257

12.6.3 异常匹配 258

12.7 异常的优点 260

12.8 本章知识点综合应用 262

12.8.1 throw、throws、try和catch 262

12.8.2 自定义异常类 264

12.8.3 使用finally 266

12.9 小结 269

12.10 习题 270

第13章 棒打双狗:Java的输入/输出处理 272

13.1 什么是流 272

13.2 字节流 272

13.2.1 输入流类InputStream 272

13.2.2 输出流类OutputStream 274

13.3 字符流 275

13.3.1 Writer类 275

13.3.2 Reader类 277

13.3.3 读取Unicode字符 278

13.3.4 读取字符文件 279

13.4 File类 281

13.4.1 创建文件夹 281

13.4.2 创建文件 282

13.4.3 复制文件 283

13.4.4 删除文件 284

13.4.5 删除文件夹 284

13.5 流的运用 286

13.5.1 文件流 286

13.5.2 管道流 287

13.5.3 I/O重定向 287

13.5.4 过滤流 288

13.5.5 序列化对象 289

13.6 本章知识点综合应用 290

13.6.1 获取文件的属性信息 290

13.6.2 创建文件和目录 292

13.6.3 删除文件和目录 296

13.7 小结 299

13.8 习题 299

第14章 以柔克刚:多线程编程 301

14.1 线程 301

14.1.1 线程的组成 301

14.1.2 多线程概念 301

14.1.3 Java中的多线程 302

14.2 创建线程 302

14.2.1 继承Thread类创建线程 302

14.2.2 实现Runnable接口创建线程 303

14.3 线程的状态 305

14.4 线程的优先级 306

14.5 线程的同步 307

14.5.1 同步方法 307

14.5.2 固定锁和同步 308

14.6 线程的控制 310

14.6.1 启动线程 310

14.6.2 挂起和恢复线程 310

14.6.3 线程的休眠方法 310

14.6.4 线程的加入方法 312

14.6.5 中断线程 314

14.6.6 结束线程 314

14.7 线程间通信 315

14.7.1 PipedWriter类详解 315

14.7.2 PipedReader类详解 316

14.7.3 管道通信实例 317

14.8 多线程的死锁问题 318

14.9 多线程的缺点 319

14.10 本章知识点综合应用 319

14.10.1 定义和启动线程 319

14.10.2 线程的协作 321

14.10.3 线程优先级 324

14.11 小结 325

14.12 习题 325

第15章 李代桃僵:网络编程 327

15.1 网络编程基础 327

15.1.1 什么是TCP协议 327

15.1.2 什么是IP协议 327

15.1.3 什么是TCP/IP 327

15.1.4 什么是UDP协议 328

15.1.5 什么是端口 328

15.1.6 什么是套接字 328

15.1.7 java.net包 328

15.2 InetAddress类 329

15.3 URL网络编程 330

15.3.1 URL 330

15.3.2 符语法 331

15.3.3 URLConnection类 332

15.4 TCP的网络编程 332

15.4.1 Socket 332

15.4.2 重要的SocketAPI 333

15.4.3 服务器端程序设计 334

15.4.4 客户端程序设计 336

15.5 UDP网络编程 336

15.5.1 UDP通信概念 337

15.5.2 UDP的特性 337

15.5.3 UDP的应用 338

15.5.4 UDP与TCP的区别 338

15.6 本章知识点综合应用 339

15.6.1 获取URL的信息 339

15.6.2 HTTP客户端 341

15.6.3 基本的Socket编程 343

15.7 小结 348

15.8 习题 349

第16章 一箭双雕:内存管理技术 351

16.1 程序中“垃圾”是什么 351

16.2 “垃圾”收集器 354

16.3 如何收集“垃圾” 356

16.3.1 finalize重写 357

16.3.2 finalize安全问题 358

16.4 非线程“垃圾” 361

16.5 线程“垃圾” 362

16.6 本章知识点综合应用 365

16.6.1 弱引用实例 365

16.6.2 软引用实例 367

16.6.3 最终守护者实例 369

16.7 小结 371

16.8 习题 371

第17章 成人之美:处理图像 373

17.1 加载与绘制 373

17.2 图标 376

17.2.1 Icon接口 376

17.2.2 ImageIcon类 379

17.3 处理图像编码 380

17.3.1 JPEG编码器 381

17.3.2 GifEncoder编码器 382

17.4 图像抓取 384

17.4.1 createScreenCapture方法 384

17.4.2 抓屏功能使用实例 384

17.5 图像滤镜的开发 388

17.6 RGB色彩通道过滤 390

17.7 卷积滤镜 391

17.8 本章知识点综合应用 393

17.9 小结 402

17.10 习题 402

第18章 里应外合:反射与注解的应用 404

18.1 反射概念 404

18.2 Class类的使用实例 404

18.3 数组与Class类 408

18.4 精确判断对象类型 409

18.4.1 Field类的知识与使用 410

18.4.2 Method类的知识与使用 412

18.4.3 Constructor类的知识与使用 414

18.5 反射与修饰符 416

18.6 取消访问限制 420

18.7 利用反射动态创建数组对象 422

18.8 本章知识点综合应用 423

18.8.1 instanceof操作符 423

18.8.2 获取类的信息 424

18.9 小结 431

18.10 习题 431

第19章 如虎添翼:使用JDBC连接数据库 433

19.1 数据库 433

19.1.1 数据库简介 433

19.1.2 SQL语句 433

19.2 JDBC简介 435

19.2.1 什么是JDBC 435

19.2.2 JDBC与Java结合 435

19.2.3 JDBC如何实现数据库的平台无关性 435

19.3 JDBC中的常用类和接口 436

19.3.1 驱动程序管理类(DriverManager) 436

19.3.2 声明类(Statement) 436

19.3.3 数据库连接类(Connection) 437

19.3.4 结果集合类(ResultSet) 437

19.4 如何实现数据库的连接 438

19.4.1 加载合适的数据库驱动程序 438

19.4.2 数据库配置问题 438

19.4.3 建立数据库连接并获得Statement对象 440

19.4.4 执行数据库查询语句 440

19.4.5 获得查询结果 441

19.4.6 关闭数据库连接 441

19.4.7 完整的示例程序 441

19.5 元数据 442

19.5.1 数据库的DatabaseMetaData元数据 443

19.5.2 结果集的ResultSetMetaData元数据 443

19.6 批处理 444

19.6.1 批处理规范 444

19.6.2 批处理举例 444

19.7 本章知识点综合应用 445

19.7.1 访问数据库 445

19.7.2 对数据库进行查询 446

19.7.3 增加、修改、删除数据库中的数据 447

19.8 小结 448

19.9 习题 448

第20章 同甘共苦:使用Swing组件创建数据库应用程序 450

20.1 JComboBox组件创建数据库应用程序 450

20.1.1 创建JComboBox 450

20.1.2 DefaultComboBoxModel创建JComboBox 452

20.2 JList组件创建数据库应用程序 453

20.2.1 DefaultListModel创建JList 453

20.2.2 ListModel创建JList 454

20.3 JTable组件创建数据库应用程序 456

20.3.1 JTable相关的类 456

20.3.2 DefaultTableModel创建JTable 457

20.4 本章知识点综合应用 458

20.4.1 使用ResultSet更新数据库 458

20.4.2 使用RowSet 462

20.5 小结 472

20.6 习题 473

第21章 明修栈道:JSP技术 475

21.1 JSP简介 475

21.1.1 MVC模式 475

21.1.2 JSP技术的优点 476

21.2 基本语法 476

21.2.1 注释 476

21.2.2 JSP指令 477

21.3 JSP脚本元素 480

21.3.1 JSP声明 480

21.3.2 JSP表达式 481

21.4 JSP动作 481

21.4.1 include动作元素 482

21.4.2 forword动作元素 482

21.4.3 plugin动作元素 483

21.4.4 param动作元素 483

21.4.5 useBean、setProperty和getProperty动作元素 484

21.5 JSP内置对象 486

21.5.1 request对象 486

21.5.2 response对象 488

21.5.3 session对象 488

21.5.4 application对象 489

21.5.5 out对象 491

21.5.6 config对象 491

21.5.7 exception对象 492

21.5.8 pageContext对象 492

21.6 本章知识点综合应用 493

21.6.1 获取客户端的真实IP地址 493

21.6.2 设置和读取Cookie 495

21.6.3 JSP无刷新聊天室 499

21.7 小结 505

21.8 习题 505

第22章 暗度陈仓:Servlet技术 507

22.1 Servlet简介 507

22.1.1 什么是Servlet 507

22.1.2 Servlet的生命周期 507

22.1.3 Servlet的基本结构 508

22.2 HTTPServlet应用编程接口 508

22.2.1 init()方法 509

22.2.2 service()方法 509

22.2.3 doGet()方法 509

22.2.4 doPost()方法 509

22.2.5 destroy()方法 509

22.2.6 GetServletConffig()方法 510

22.2.7 GetServletInfo()方法 510

22.3 创建HttpServlet 510

22.4 调用HttpServlet 512

22.4.1 由URL调用Servlet 512

22.4.2 在<FORM>标记中指定Servlet 512

22.4.3 在<SERVLET>标记中指定Servlet 513

22.4.4 在ASP文件中调用Servlet 513

22.5 Servlet之间的跳转 514

22.5.1 转向Forward 514

22.5.2 重定向Redirect 515

22.6 本章知识点综合应用 515

22.6.1 用Servlet生成图形验证码 515

22.6.2 用Servlet实现分页查看数据库 520

22.7 小结 534

22.8 习题 534

第四篇 开发实战篇 536

第23章 小试牛刀:界面游戏拼图 536

23.1 游戏简介 536

23.2 素材准备 537

23.3 游戏设计 537

23.3.1 加载和拆分图片 537

23.3.2 实现图片的随机排列 538

23.3.3 实现图片的移动 538

23.3.4 参考图像的缩放 539

23.4 开发步骤 539

23.4.1 自定义按钮类设计:ImageButton类 540

23.4.2 游戏界面布局:构造窗体类PuzzleGame 540

23.4.3 加载和拆分图像 541

23.4.4 创建拼接图面板 542

23.4.5 创建显示参考图像的面板 543

23.4.6 创建菜单栏 545

23.4.7 实现按钮事件监听器类 547

23.4.8 设置窗体在屏幕中出现的位置 547

23.4.9 编写main()方法 548

23.4.10 运行测试 548

23.5 打包部署 548

23.6 小结 549

第24章 鹤啸九天:学生信息管理系统 551

24.1 需求分析 551

24.2 系统设计 551

24.3 登录模块 551

24.3.1 设计构想 551

24.3.2 实现登录模块 552

24.4 学生信息模块相关流程 554

24.4.1 设计构想 554

24.4.2 实现学生信息主界面 554

24.4.3 增加学生信息 557

24.4.4 删除学生信息 560

24.4.5 修改学生信息 563

24.4.6 基本学生信息查询 567

24.4.7 成绩查询 571

24.4.8 退出系统 575

24.5 教师信息模块相关流程 576

24.5.1 主界面 576

24.5.2 增加老师信息 579

24.5.3 删除老师信息 583

24.5.4 修改老师信息 586

24.5.5 录入成绩 590

24.5.6 删除成绩 593

24.5.7 修改成绩 596

24.5.8 基本信息查询 600

24.5.9 退出系统 604

24.6 小结 606