《Java 2编程起步》PDF下载

  • 购买积分:15 如何计算积分?
  • 作  者:(美)Herbert Schildt著;史兴华译
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2001
  • ISBN:7115091781
  • 页数:495 页
图书介绍:

第1章 Java基础 1

1.1 Java的起源 2

1.1.1 Java与C和C++的联系 3

1.2 Java对于Internet的贡献 4

1.2.1 Java applet和应用程序 4

1.2.2 安全性 4

1.2.3 可移植性 5

1.3 Java魔术:bytecode 5

1.4 Java的专门用语 6

1.5 面向对象的编程 7

1.5.1 封装 8

1.5.2 多态性 8

1.5.3 继承 9

1.6 获得JDK 10

1.7 第一个示例程序 10

1.7.1 输入程序 10

1.7.2 编译程序 11

1.7.3 逐行解释第一个示例程序 12

1.8 处理语法错误 14

1.9 第二个示例程序 15

1.10 另一种数据类型 17

项目1-1 将加仑转换为升 19

1.11 两个控制语句 20

1.11.1 if语句 20

1.11.2 for循环 22

1.12 使用代码块 24

1.13 分号和定位 25

1.14 缩排习惯 26

项目1-2 改进加仑转换为升的程序 27

1.15 Java关键字 29

1.16 Java标识符 29

1.17 Java类库 30

1.18 小测验 30

第2章 介绍数据类型和运算符 32

2.1 数据类型的重要性 33

2.2 Java的简单类型 33

2.3 整数 34

2.4 浮点类型 35

2.5 字符 36

2.6 布尔类型 38

项目2-1 闪电有多远 39

2.7 常量 40

2.7.1 十六进制和八进制常数 41

2.7.2 字符转义序列 41

2.7.3 字符串常量 42

2.8 进一步研究变量 43

2.8.1 初始化变量 43

2.8.2 动态初始化 44

2.9 变量的作用域和生存期 44

2.10 运算符 47

2.11 算术运算符 48

2.11.1 增量和减量运算 49

2.12 关系和逻辑运算符 50

2.12.1 短路逻辑运算符 52

2.13 赋值运算符 54

2.13.1 赋值的简写形式 55

2.13.2 赋值中的类型转换 55

2.14 不兼容类型的造型 57

2.15 运算符优先级 59

项目2-2 显示逻辑运算符的真值表 59

2.16 表达式 61

2.16.1 表达式中的类型转换 61

2.16.2 空格和圆括号 63

2.17 小测验 63

第3章 程序控制语句 65

3.1 从键盘输入字符 66

3.2 if语句 67

3.2.1 嵌套if语句 69

3.2.2 if-else-if阶梯 70

3.3 switch语句 72

3.3.1 嵌套switch语句 75

3.3.2 项目3-1:开始建立Java帮助系统 76

3.4 for循环 79

3.4.1 for循环的一些变化 81

3.4.2 空白部分 82

3.4.3 没有循环体的循环 83

3.4.4 在循环中声明循环控制变量 84

3.5 while循环 85

3.6 do-while循环 87

项目3-2:改进Java帮助系统 90

3.7 使用break退出循环 93

3.8 使用break作为goto的一种形式 95

3.9 使用continue语句 99

项目3-3 完成Java帮助系统 101

3.10 嵌套循环 105

3.11 小测验 107

第4章 介绍类、对象和方法 109

4.1 类基础 110

4.1.1 类的通用格式 110

4.1.2 定义类 111

4.2 对象是如何创建的 115

4.3 句柄变量和赋值 115

4.4 方法 116

4.4.1 为Vehicle类增加一个方法 117

4.4.2 从方法返回 119

4.4.3 返回值 120

4.4.4 使用自变量 122

4.4.5 为Vehicle类增加一个自变量方法 124

4.4.6 项目4-1:创建Help类 126

4.5 构造器 133

4.5.1 自变量构造器 134

4.5.2 给Vehicle类增加一个构造器 135

4.6 再次研究new运算符 137

4.7 垃圾收集和收尾 137

4.7.1 finalize()方法 138

4.7.2 项目4-2:演示收尾 139

4.8 this关键字 141

4.9 小测验 144

第5章 更多数据类型和运算符 145

5.1.1 一维数组 146

5.1.2 项目5-1:数组排序 150

5.2 多维数组 152

5.2.1 二维数组 152

5.2.2 不规则数组 153

5.2.3 三维或者更多维数的数组 155

5.2.4 初始化多维数组 155

5.3 可选择的数组声明语法 157

5.4 数组句柄赋值 157

5.5 使用length成员 159

项目5-2:一个队列类 161

5.6 String 166

5.6.1 创建String 166

5.6.2 String操作 167

5.6.3 String数组 169

5.6.4 String是不可改变的 170

5.6.5 使用命令行参数 171

5.7 位运算符 174

5.7.1 位运算符AND、OR、XOR和NOT 174

5.7.2 移位运算符 179

5.7.3 位赋值简写 181

5.7.4 项目5-3:一个ShowBits类 182

5.8 ?运算符 185

5.9 小测验 187

第6章 进一步研究方法和类 188

6.1 控制对类成员的访问 189

6.1.1 Java的访问指示符 189

6.1.2 项目6-1:改进Queue类 194

6.2 给方法传递对象 196

6.2.1 参数是如何传递的 197

6.3 返回对象 200

6.4 方法重载 202

6.5 构造器重载 208

项目6-2:重载Queue构造器 211

6.6 递归 215

6.7 理解static 217

6.7.1 static块 220

6.7.2 项目6-3:快速排序 222

6.8 介绍嵌套类和内部类 225

6.9 小测验 229

第7章 继承 231

7.1 继承的基础 232

7.1.1 成员访问和继承 235

7.2 构造器和继承 238

7.2.1 使用super调用超类构造器 240

7.3 使用super访问超类成员 246

项目7-1:扩展Vehicle类 247

7.4 创建多级类层次 250

7.5 构造器何时被调用? 254

7.6 超类句柄和子类对象 255

7.7 方法覆盖 261

7.8 覆盖方法支持多态性 264

7.8.1 为什么覆盖方法? 266

7.8.2 对TwoDShape使用方法覆盖 266

7.9 使用抽象类 271

7.10 使用final 276

7.10.1 使用final阻止覆盖 277

7.10.2 使用final阻止继承 277

7.10.3 对数据成员使用final 278

7.11 Object类 279

7.12 小测验 280

第8章 包和接口 282

8.1 包 283

8.1.1 定义包 283

8.1.2 寻找包和CLASSPATH 284

8.1.3 一个包的小例子 285

8.2 包和成员访问 287

8.2.1 包访问示例 288

8.2.2 理解Protected成员 289

8.3 引入包 292

8.4 Java的类库包含在包中 294

8.5 接口 295

8.5.1 实现接口 296

8.5.2 使用接口句柄 300

8.5.3 项目8-1:创建一个Queue接口 303

8.5.4 接口中的变量 309

8.5.5 接口可以被继承 310

8.6 小测验 311

第9章 异常处理 313

9.1 异常层次 314

9.2 错误处理基础 314

9.2.1 使用try和catch 315

9.2.2 一个简单的异常示例 315

9.2.3 未捕获异常的后果 318

9.2.4 异常使你能够柔性地处理错误 320

9.3 使用多重catch语句 321

9.3.1 捕获子类异常 322

9.4 嵌套try块 324

9.5 掷出异常 325

9.5.1 重新掷出异常 326

9.6 进一步研究Throwable 328

9.7 使用finally 330

9.8 使用throws 332

9.9 Java的内建异常 334

9.10 创建异常子类 335

项目9-1:给Queue类添加异常 338

9.12 小测验 342

第10章 使用I/O 344

10.1 Java的I/O是依赖于流的 345

10.1.1 字节流和字符流 345

10.1.2 字节流类 346

10.1.3 字符流类 346

10.1.4 预定义流 347

10.2 使用字节流 348

10.2.1 读取控制台输入 349

10.2.2 写入控制台输出 350

10.3 使用字节流读写文件 351

10.3.1 从文件输入 351

10.3.2 写入文件 353

10.3.3 读写二进制数据 356

10.3.4 项目10-1:一个文件比较实用程序 360

10.4 随机文件访问 362

10.5 使用Java基于字符的流 365

10.5.1 使用字符流的控制台输入 366

10.5.2 使用字符流的控制台输出 369

10.5.3 使用字符流处理文件I/O 370

10.6 使用Java的类型包装器转换数字字符串 373

项目10-2:创建一个基于磁盘的Help系统 375

10.7 小测验 383

第11章 多线程编程 384

11.1 多线程基础 385

11.2 线程类和可运行接口 385

11.3 创建一个线程 386

11.3.1 一些简单的改进 390

11.3.2 项目11-1:继承Thread 392

11.4 创建多线程 395

11.5 决定何时一个线程结束 398

11.6 线程优先级 402

11.7 同步 406

11.7.1 使用同步方法 406

11.7.2 同步语句 409

11.8 使用notify()、wait()和notifyAll()进行线程间通信 412

11.8.1 一个使用wait()和notify()的例子 413

11.9 挂起、恢复和停止线程 418

项目11-2:使用主线程 422

11.10 小测验 424

第12章 applet、事件以及其他主题 425

12.1 applet基础 426

12.2 applet的组织和基本要素 429

12.2.1 applet架构 429

12.2.2 一个完整的applet框架 430

12.2.3 applet的初始化和终止 431

12.3 请求刷新 432

12.3.1 update()方法 433

12.3.2 项目12-1:一个简单的标题applet 433

12.4 使用状态窗口 438

12.5 给applet传递自变量 439

12.6 applet类 441

12.7 事件处理 442

12.8.1 事件 443

12.8.2 事件源 443

12.8 授权事件模型 443

12.8.4 事件类 444

12.8.5 事件接收器接口 444

12.8.3 事件接收器 444

12.9 使用授权事件模型 445

12.9.1 处理鼠标事件 446

12.9.2 一个简单的鼠标事件applet 446

12.10 更多Java关键字 449

12.10.1 transient和volatile修饰符 450

12.10.2 instanceof 450

12.12 native方法 451

12.13 下一步做什么? 451

12.11 strictfp 451

12.14 小测验 452

附录A 小测验答案 453

第1章 Java基础 454

第2章 介绍数据类型和运算符 456

第3章 程序控制语句 457

第4章 介绍类、对象和方法 461

第5章 更多数据类型和运算符 462

第6章 进一步研究方法和类 465

第7章 继承 470

第8章 包和接口 472

第9章 违例处理 473

第10章 使用I/O 476

第11章 多线程编程 480

第12章 applet、事件以及其他主题 482

附录B 使用Java的文档注释 489

B.1 javadoc标签 490

B.1.4 @exception 491

B.1.3 {@docRoot} 491

B.1.5 {@link} 491

B.1.2 @deprecated 491

B.1.1 @author 491

B.1.9 @serial 492

B.1.8 @see 492

B.1.10 @serialData 492

B.1.7 @return 492

B.1.6 @param 492

B.1.14 @version 493

B.1.13 @throws 493

B.2 文档注释的通用格式 493

B.1.12 @since 493

B.1.11 @serialField 493

B.3 javadoc的输出 494

B.4 一个使用文档注释的例子 494

5.1 数组 1466