《Java编程指南》PDF下载

  • 购买积分:16 如何计算积分?
  • 作  者:(美)布迪·克尼亚万(BUDIKURNIAWAN)著;闫斌,贺莲译
  • 出 版 社:北京:机械工业出版社
  • 出版年份:2015
  • ISBN:9787111503811
  • 页数:534 页
图书介绍:这本书涵盖了Java开发者需要掌握的最重要的主题:面向对象编程、Java语言语法以及Java库。本书可以作为立志成为Java开发人员的参考手册,它讨论了Java编程主题中最精华的部分,而这是进一步自学其他技术所必须掌握的内容。

第1章 初识Java 1

1.1 第一个Java程序 1

1.1.1 编写Java程序 1

1.1.2 编译Java程序 2

1.1.3 运行Java程序 2

1.2 Java编码规范 3

1.3 集成开发环境 3

1.4 小结 4

习题 4

第2章 语言基础 5

2.1 ASCII和Unicode 5

2.2 分隔符 7

2.3 基本类型 7

2.4 变量 8

2.4.1 Java字母和Java数字 9

2.4.2 Sun公司的变量命名规范 11

2.5 常量 11

2.6 字面量 11

2.6.1 整数字面量 11

2.6.2 浮点字面量 12

2.6.3 布尔字面量 14

2.6.4 字符字面量 14

2.7 基本类型转换 15

2.7.1 扩大转换 15

2.7.2 缩小转换 15

2.8 运算符 16

2.8.1 一元运算符 17

2.8.2 算术运算符 18

2.8.3 相等运算符 19

2.8.4 关系运算符 20

2.8.5 条件运算符 20

2.8.6 移位运算符 21

2.8.7 赋值运算符 22

2.8.8 整数按位运算符 22

2.8.9 逻辑运算符 23

2.8.10 运算符优先级 23

2.8.11 升级 24

2.9 注释 24

2.10 小结 25

习题 25

第3章 语句 26

3.1 Java语句概述 26

3.2 if语句 27

3.3 while语句 29

3.4 do-while语句 31

3.5 for语句 31

3.6 break语句 34

3.7 continue语句 35

3.8 switch语句 36

3.9 小结 37

习题 37

第4章 对象和类 38

4.1 什么是Java对象 38

4.2 Java类 39

4.2.1 域 40

4.2.2 方法 40

4.2.3 UML类图中的类成员 42

4.3 创建对象 42

4.4 关键字null 43

4.5 内存中的对象 44

4.6 Java包 45

4.7 封装和存取控制 46

4.7.1 类访问控制修饰符 47

4.7.2 类成员访问控制修饰符 48

4.8 关键字this 50

4.9 使用其他类 51

4.10 final变量 53

4.11 静态成员 53

4.12 静态final变量 55

4.13 静态导入 56

4.14 变量作用域 57

4.15 方法重载 58

4.16 传值还是传引用 59

4.17 加载、连接和初始化 59

4.17.1 加载 60

4.17.2 链接 60

4.17.3 初始化 60

4.18 对象创建的初始化 61

4.19 对象的比较 64

4.20 垃圾回收器 64

4.21 小结 65

习题 65

第5章 核心类 66

5.1 java.lang.Object 67

5.2 java.lang.String 67

5.2.1 比较两个String 68

5.2.2 字符串字面量 69

5.2.3 特定字符转义 69

5.2.4 对String使用switch语句 70

5.2.5 String类的构造器 70

5.2.6 String类的方法 71

5.3 StringBuffer和StringBuilder 73

5.3.1 StringBuilder类的构造器 73

5.3.2 StringBuilder类的方法 74

5.4 基本类型封装 74

5.4.1 java.lang.Integer 75

5.4.2 java.lang.Boolean 75

5.4.3 java.lang.Character 76

5.5 数组 76

5.5.1 迭代数组 78

5.5.2 修改数组大小 78

5.5.3 将String数组传递给main 80

5.6 java.lang.Class 80

5.7 java.lang.System 81

5.8 java.util.Scanner 84

5.9 装箱和拆箱 85

5.10 可变参数 85

5.11 格式和printf方法 86

5.12 小结 87

习题 87

第6章 继承 88

6.1 继承概述 88

6.1.1 关键字extends 88

6.1.2 is-a关系 89

6.2 可访问性 90

6.3 方法覆盖 91

6.4 调用超类的构造器 92

6.5 调用超类的隐藏成员 94

6.6 类型转换 95

6.7 final类 95

6.8 关键字instanceof 96

6.9 小结 96

习题 96

第7章 错误处理 97

7.1 捕捉异常 97

7.2 没有catch块的try词句 99

7.3 捕捉多个异常 99

7.4 try-with-resource语句 100

7.5 java.lang.Exception类 101

7.6 从方法抛出异常 102

7.7 用户自定义异常 103

7.8 异常处理总结 104

7.9 小结 105

习题 105

第8章 数字和日期 106

8.1 数字解析 106

8.2 数字格式化 107

8.3 用java.text.NumberFormat进行数字解析 108

8.4 java.lang.Math类 109

8.5 java.util.Date类 109

8.6 java.util.Calendar类 110

8.7 用DateFormat进行日期解析和格式化 111

8.7.1 DateFormat 111

8.7.2 SimpleDateFormat类 113

8.8 小结 114

习题 114

第9章 接口和抽象类 115

9.1 接口的概念 115

9.2 从技术上来看的接口 116

9.2.1 接口中的域 117

9.2.2 方法 118

9.3 基类 118

9.4 抽象类 119

9.5 小结 120

习题 120

第10章 枚举 121

10.1 枚举概述 121

10.2 类中的枚举 122

10.3 java.lang.Enum类 123

10.4 迭代枚举值 123

10.5 switch中的枚举 123

10.6 小结 124

习题 124

第11章 集合框架 125

11.1 集合框架概述 125

11.2 Collection接口 126

11.3 List和ArrayList 126

11.4 用Iterator和for迭代集合 128

11.5 Set和HashSet 129

11.6 Queue和LinkedList 130

11.7 集合转换 131

11.8 Map和HashMap 131

11.9 对象的比较和排序 132

11.9.1 使用java.lang.Comparable 132

11.9.2 使用Comparable和Comparator 135

11.10 小结 139

习题 139

第12章 泛型 140

12.1 没有泛型的生活 140

12.2 泛型类型简介 141

12.3 使用没有类型参数的泛型类型 144

12.4 使用?通配符 144

12.5 在方法中使用有界通配符 146

12.6 编写泛型类型 147

12.7 小结 148

习题 148

第13章 输入/输出 149

13.1 文件系统和路径 150

13.2 文件和目录的处理与操作 152

13.2.1 创建和删除文件与目录 152

13.2.2 检索目录的对象 152

13.2.3 复制和移动文件 153

13.2.4 文件的读取和写入 153

13.3 输入/输出流 155

13.4 读取二进制数据 156

13.5 写入二进制数据 159

13.6 写入文本(字符) 162

13.6.1 Writer 163

13.6.2 OutputStreamWriter 163

13.6.3 PrintWriter 164

13.7 读取文本(字符) 166

13.7.1 Reader 166

13.7.2 InputStreamReader 167

13.7.3 BufferedReader 168

13.8 用PrintStream记录日志 169

13.9 随机访问文件 170

13.10 对象序列化 174

13.11 小结 177

习题 177

第14章 嵌套类和内部类 178

14.1 嵌套类概述 178

14.2 静态嵌套类 179

14.3 成员内部类 180

14.4 局部内部类 182

14.5 匿名内部类 184

14.6 深入嵌套类和内部类 185

14.7 小结 187

习题 187

第15章 Swing基础 188

15.1 AWT组件 189

15.2 有用的AWT类 191

15.2.1 java.awt.Color 191

15.2.2 java.awt.Font 191

15.2.3 java.awt.Point 192

15.2.4 java.awt.Dimension 192

15.2.5 java.awt.Rectangle 192

15.2.6 java.awt.Graphics 192

15.2.7 java.awt.Toolkit 193

15.3 基本Swing组件 193

15.3.1 JFrame 194

15.3.2 调整大小和定位 197

15.3.3 扩展JFrame 198

15.3.4 JComponent 199

15.3.5 Icon和ImageIcon 200

15.3.6 JLabel 201

15.3.7 JButton 202

15.3.8 JTextField和JPasswordField 203

15.3.9 JTextArea 205

15.3.10 JCheckbox 207

15.3.11 JRadioButton 208

15.3.12 Jlist 209

15 3 13 JComboBox 211

15.3.14 JDialog 212

15.3.15 JOptionPane 215

15.3.16 JFileChooser 219

15.4 小结 221

习题 221

第16章 Swing进阶 222

16.1 布局管理器 222

16.1.1 BorderLayout 223

16.1.2 FlowLayout 225

16.1.3 BoxLayout 227

16.1.4 GridLayout 228

16.1.5 不使用LayoutManager 229

16.2 事件处理 230

16.2.1 Java事件模型 230

16.2.2 Swing事件处理 231

16.2.3 AWT事件API 232

16.2.4 处理ActionEvent 235

16.2.5 处理MouseEvent 236

16.2.6 将监听器写成匿名类 237

16.2.7 处理JRadioButton的ActionEvent 240

16.2.8 处理KeyEvent 241

16.2.9 处理WindowListener 242

16.3 使用菜单 243

16.4 界面外观 245

16.5 快速启动画面 246

16.6 系统托盘支持 249

16.7 桌面帮助程序 251

16.8 小结 255

习题 255

第17章 多态 256

17.1 定义多态 256

17.2 多态的作用 259

17.3 绘图应用程序中的多态 260

17.4 多态和反射 265

17.5 小结 266

习题 266

第18章 注解 267

18.1 注解概述 267

18.1.1 注解和注解类型 267

18.1.2 注解语法 268

18.1.3 注解接口 268

18.2 标准注解 269

18.2.1 Override 269

18.2.2 Deprecated 270

18.2.3 SuppressWarnings 271

18.3 通用注解 272

18.4 标准元注解 272

18.4.1 Documented 272

18.4.2 Inherited 273

18.4.3 Retention 273

18.4.4 Target 273

18.5 定制注解类型 274

18.5.1 编写自己的定制注解类型 274

18.5.2 使用定制注解类型 275

18.5.3 用反射查询注解 275

18.6 小结 276

习题 276

第19章 国际化 277

19 1 Locales 278

19.2 国际化应用程序 279

19.2.1 将文本组件单独放进属性文件 279

19.2.2 用ResourceBundle读取属性文件 280

19.3 国际化的Swing应用程序 280

19.4 小结 282

习题 282

第20章 Applet 283

20.1 Applet简史 283

20.2 AppletAPI 284

20.2.1 Applet类 284

20.2.2 AppletContext接口 286

20.2.3 AudioClip接口 286

20.2.4 AppletStub接口 287

20.3 安全限制 287

20.4 编写和部署Applet 287

20.5 AppletViewer工作原理 289

20.6 将参数传递给Applet 290

20.7 SoundPlayerApplet 293

20.8 JApplet 294

20.9 JAR文件中的Applet部署 295

20.10 更快速加载 296

20.11 小结 296

习题 296

第21章 Java网络 297

21.1 网络概述 297

21.2 超文本传输协议(HTTP) 298

21.2.1 HTTP请求 298

21.2.2 HTTP响应 299

21.3 java.net.URL 300

21.3.1 解析URL 300

21.3.2 读取Web资源 301

21.4 java.net.URLConnection 302

21.4.1 读取Web资源 303

21.4.2 写入Web服务器 305

21.5 java.net.Socket 305

21.6 java.net.ServerSocket 307

21.7 Web服务器应用程序 308

21.7.1 HttpServer类 308

21.7.2 Request类 312

21.7.3 Response类 313

21.7.4 运行应用程序 315

21.8 小结 316

习题 316

第22章 Java数据库连接 317

22.1 JDBC简介 317

22.2 数据访问的四个步骤 318

22.2.1 加载JDBC驱动程序 318

22.2.2 获得数据库连接 319

22.2.3 创建Statement对象 320

22.2.4 创建ResultSet对象 321

22.3 关闭JDBC对象 322

22.4 读取元数据 323

22.5 SQLTool示例 323

22.5.1 准备MySQL 324

22.5.2 SQLTool类 325

22.6 小结 328

习题 328

第23章 Java线程 329

23.1 Java线程简介 329

23.2 创建线程 330

23.2.1 扩展线程 331

23.2.2 实现Runnable 332

23.3 使用多线程 333

23.4 线程优先级 334

23.5 停止线程 336

23.6 同步 338

23.6.1 线程冲突 339

23.6.2 方法同步 340

23.6.3 块同步 341

23.7 可见性 341

23.8 线程协调 344

23.9 使用Timer 348

23.10 SwingTimer 350

23.11 小结 352

习题 352

第24章 并发工具 353

24.1 原子变量 353

24.2 Executor和ExecutorService 354

24.3 Callable和Future 358

24.4 SwingWorker 361

24.5 锁 364

习题 365

第25章 安全 366

25.1 Java安全概述 366

25.2 使用安全管理器 367

25.3 策略文件 368

25.3.1 keystore 369

25.3.2 grant 369

25.4 权限 370

25.4.1 java.io.FilePermission 371

25.4.2 java.security.BasicPermission 371

25.4.3 java.util.Property-Permission 371

25.4.4 java.net.SocketPermission 371

25.4.5 java.security.Unresolve-Permission 372

25.4.6 java.lang.Runtime-Permission 372

25.4.7 java.awt.AWTPermission 372

25.4.8 java.net.NetPermission 372

25.4.9 java.lang.reflect.RetlectPermission 373

25.4.10 java.io.Serializable-Permission 373

25.4.11 java.security.Security-Permission 373

25.4.12 java.securityAllPermissjon 373

25.4.13 javax.security.auth.AuthPermission 373

25.5 使用PolicyTool 374

25.6 Applet安全 375

25.7 安全编程 375

25.8 加密概述 376

25.8.1 加密/解密 377

25.8.2 认证 377

25.8.3 数据完整性 378

25.8.4 SSL工作原理 379

25.9 创建证书 380

25.10 KeyTool程序 380

25.10.1 生成密钥对 380

25.10.2 认证 382

25.10.3 将证书导入密钥库 382

25.10.4 从密钥库导出证书 382

25.10.5 列出密钥库条目 383

25.11 JarSigner工具 383

25.11.1 签署JAR文件 383

25.11.2 验证已签署的JAR文件 383

25.11.3 范例:签署Applet 384

25.12 JavaCryptographyAPI 386

25.13 小结 386

习题 386

第26章 JavaWeb应用程序 387

26.1 Servlet应用程序架构 387

26.2 ServletAPI概述 388

26.3 Servlet 389

26.4 编写基本Servlet应用程序 390

26.4.1 安装Tomcat 390

26.4.2 编写和编译Servlet类 390

26.4.3 应用程序的目录结构 392

26.4.4 调用Servlet 393

26.5 ServletRequest 393

26.6 ServletResponse 394

26.7 ServletConfig 394

26.8 ServletContext 396

26.9 GenericServlet 397

26.10 HTTP Servlet 398

26.10.1 HttpServlet 399

26.10.2 HttpServletRequest 400

26.10.3 HttpServletResponse 401

26.10.4 编写HttpServlet 401

26.11 使用部署描述符 404

26.12 小结 407

习题 407

第27章 JavaServer Pages 408

27.1 JSP概述 408

27.2 jspInit、jspDestroy以及其他方法 410

27.3 隐式对象 411

27.4 JSP语法元素 412

27.4.1 指令 412

27.4.2 脚本元素 415

27.5 处理错误 416

27.6 小结 417

习题 417

第28章 Javadoc 418

28.1 在Java类中编写文档 418

28.1.1 @author 419

28.1.2 {@code} 419

28.1.3 {@docRoot} 420

28.1.4 @deprecated 420

28.1.5 @exception 420

28.1.6 {@inheritDoc} 420

28.1.7 {@link} 420

28.1.8 {@linkplain} 421

28.1.9 {@literal} 421

28.1.10 {@param} 421

28.1.11 @return 421

28.1.12 @see 422

28.1.13 @serial 422

28.1.14 @serialData 422

28.1.15 @serialField 422

28.1.16 @since 423

28.1.17 @throws 423

28.1.18 {@value} 423

28.1.19 @version 423

28.2 Javadoc语法 423

28.2.1 Javadoc选项 424

28.2.2 标准doclet选项 425

28.2.3 生成文档 426

28.3 小结 427

习题 427

第29章 应用程序部署 428

29.1 JWS概述 428

29.2 JNLP文件语法 429

29.2.1 jnlp元素 429

29.2.2 information元素 430

29.2.3 security元素 431

29.2.4 resources元素 431

29.2.5 application-desc元素 431

29.2.6 applet-desc元素 431

29.3 部署范例 432

29.4 安全关注 434

29.5 小结 435

习题 435

第30章 反射 436

30.1 概述 436

30.2 java.lang.Class 437

30.3 创建对象 438

30.4 创建数组 440

30.5 域操作 442

30.6 方法操作 443

30.7 调用方法 444

30.8 小结 446

习题 446

第31章 JavaFX概述 447

31.1 概述 447

31.2 安装 448

31.3 第一个JavaFX应用程序 448

31.4 Application、Stage和Scene 449

31.4.1 Application类 450

31.4.2 Stage类 450

31.4.3 Scene类 450

31.5 UI组件 451

31.6 控件 451

31.7 Region 454

31.8 事件处理 456

31.9 CSS样式 459

31.10 小结 462

习题 462

第32章 使用FXML的JavaFX 463

32.1 概述 463

32.2 一个基于FXML的简单应用程序 465

32.3 用FXML进行事件处理 467

32.4 小结 470

习题 470

第33章 Android编程介绍 471

33.1 概述 471

33.2 下载安装Android开发工具 471

33.3 第一个Android应用程序 472

33.4 Android清单 474

33.5 在仿真器上运行应用程序 475

33.6 应用程序结构 478

33.7 替换应用程序图标 478

33.8 日志记录 478

33.9 调试应用程序 479

33.10 在实际设备上运行 481

33.11 更新SDK 481

33.12 小结 482

习题 482

第34章 创建Android应用程序 483

34.1 概述 483

34.2 活动的生命周期 484

34.3 AndroidUI组件 485

34.3.1 使用ADTEclipseUI工具 486

34.3.2 示例:使用Basic Components 486

34.4 布局组件 489

34.5 监听器 490

34.6 启动另一个活动 493

34.7 小结 497

习题 497

第35章 更多的Android应用程序 498

35.1 处理Handler 498

35.2 MediaRecorder 502

35.3 异步任务 506

35.4 小结 511

习题 511

附录A javac 512

附录B java 517

附录C jar 522

附录D NetBeans 526

附录E Eclipse 530