当前位置:首页 > 工业技术
Java完全参考手册  原书第8版
Java完全参考手册  原书第8版

Java完全参考手册 原书第8版PDF电子书下载

工业技术

  • 电子书积分:28 积分如何计算积分?
  • 作 者:(美)施密特著;王德才,吴明飞,唐业军译
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2012
  • ISBN:9787302300830
  • 页数:1105 页
图书介绍:本书详细讲解了Java程序的开发、编译、调试和运行,深入分析了数据类型、运算符、控制语句、继承、接口、异常处理、多线程编程、枚举、输入/输出、泛型、字符串处理、集合框架、网络编程、applet/aervlet、事件处理、AWT、JavaBean、Swing等的使用技巧。对Java API库的介绍也非常详细。通过数百个详细的实例程序和大量的总结性表格,能使读者对所讲解的内容有直观的认识,从而快速领会Java编程的技巧。
《Java完全参考手册 原书第8版》目录
标签:参考 手册

第Ⅰ部分Java语言 3

第1章Java的历史和演变 4

1.1 Java的家世 4

1.1.1现代编程语言的诞生:C语言 4

1.1.2 C++:下一个阶段 5

1.1.3 Java出现的时机已经成熟 6

1.2 Java的诞生 6

1.3 Java改变Intetnet的方式 8

1.3.1 Java applet 8

1.3.2安全性 8

1.3.3可移植性 9

1.4 Java的魔力:字节码 9

1.5 servlet:服务器端的Java 10

1.6 Java的关键特性 10

1.6.1简单性 10

1.6.2面向对象 11

1.6.3健壮性 11

1.6.4多线程 11

1.6.5体系结构中立 11

1.6.6解释执行和高性能 12

1.6.7分布式 12

1.6.8动态性 12

1.7 Java的演变历程 12

1.8文化革新 15

第2章Java综述 17

2.1面向对象编程 17

2.1.1两种范式 18

2.1.2抽象 18

2.1.3 OOP三原则 19

2.2第一个简单程序 23

2.2.1输入程序 23

2.2.2编译程序 23

2.2.3深入分析第一个示例程序 24

2.3第二个简短程序 26

2.4两种控制语句 28

2.4.1 if语句 28

2.4.2 for循环 29

2.5使用代码块 30

2.6词汇问题 32

2.6.1空白符 32

2.6.2标识符 32

2.6.3字面值 32

2.6.4注释 32

2.6.5分隔符 33

2.6.6 Java关键字 33

2.7 Java类库 34

第3章 数据类型、变量和数组 35

3.1 Java是强类型化的语言 35

3.2基本类型 36

3.3整型 36

3.3.1 byte 37

3.3.2 short 37

3.3.3 int 37

3.3.4 long 37

3.4浮点型 38

3.4.1 float 38

3.4.2 double 39

3.5字符型 39

3.6布尔型 41

3.7深入分析字面值 42

3.7.1整型字面值 42

3.7.2浮点型字面值 43

3.7.3布尔型字面值 44

3.7.4字符型字面值 44

3.7.5字符串字面值 44

3.8变量 45

3.8.1变量的声明 45

3.8.2动态初始化 45

3.8.3变量的作用域和生命周期 46

3.9类型转换和强制类型转换 48

3.9.1 Java的自动类型转换 49

3.9.2强制转换不兼容的类型 49

3.10表达式中的自动类型提升 50

3.11数组 52

3.11.1一维数组 52

3.11.2多维数组 54

3.11.3另一种数组声明语法 58

3.12关于字符串的一些说明 59

3.13向C/C++程序员提供指针方面的注解 60

第4章 运算符 61

4.1算术运算符 61

4.1.1基本算术运算符 62

4.1.2求模运算符 63

4.1.3算术与赋值复合运算符 64

4.1.4自增与自减运算符 65

4.2位运算符 68

4.2.1位逻辑运算符 68

4.2.2左移 70

4.2.3右移 71

4.2.4无符号右移 73

4.2.5位运算符与赋值的组合 74

4.3关系运算符 75

4.4布尔逻辑运算符 76

4.5赋值运算符 78

4.6“?”运算符 78

4.7运算符的优先级 79

4.8使用圆括号 80

第5章 控制语句 83

5.1 Java的选择语句 83

5.1.1 if语句 84

5.1.2 switch语句 87

5.2迭代语句 91

5.2.1 while语句 92

5.2.2 do-while语句 93

5.2.3 for语句 96

5.2.4 for循环的for-each版本 100

5.2.5嵌套的循环 105

5.3跳转语句 106

5.3.1使用break语句 106

5.3.2使用continue语句 110

5.3.3 return语句 111

第6章类 113

6.1类的基础知识 114

6.1.1类的一般形式 114

6.1.2一个简单的类 115

6.2声明对象 117

6.3为对象引用变量赋值 119

6.4方法 120

6.4.1为Box类添加方法 120

6.4.2返回值 122

6.4.3添加带参数的方法 124

6.5构造函数 126

6.6 this关键字 129

6.7垃圾回收 130

6.8 finalize()方法 130

6.9堆栈类 131

第7章 方法和类的深入分析 135

7.1重载方法 135

7.2将对象用作参数 140

7.3参数传递的深入分析 143

7.4返回对象 145

7.5递归 146

7.6访问控制 148

7.7理解static 151

7.8 final介绍 153

7.9重新审视数组 154

7.10嵌套类和内部类 156

7.11 String类介绍 158

7.12使用命令行参数 161

7.13 varargs:可变长度参数 162

7.13.1重载varargs方法 165

7.13.2 varargs方法与模糊性 166

第8章 继承 169

8.1继承的基础知识 169

8.1.1成员访问与继承 171

8.1.2一个更实际的例子 172

8.1.3超类变量可以引用子类对象 174

8.2使用super关键字 175

8.2.1使用super调用超类的构造函数 176

8.2.2 super的另一种用法 179

8.3创建多级继承层次 180

8.4构造函数的调用时机 183

8.5方法重写 184

8.6动态方法调度 187

8.6.1重写方法的目的 189

8.6.2应用方法重写 189

8.7使用抽象类 191

8.8在继承中使用final关键字 193

8.8.1使用final关键字阻止重写 194

8.8.2使用final关键字阻止继承 194

8.9 Obj ect类 195

第9章 包和接口 197

9.1包 198

9.1.1定义包 198

9.1.2包查找与CLASSPATH 199

9.1.3一个简短的包示例 199

9.2访问保护 200

9.3导入包 204

9.4接口 206

9.4.1定义接口 207

9.4.2实现接口 207

9.4.3嵌套接口 210

9.4.4应用接口 211

9.4.5接口中的变量 214

9.4.6接口可以扩展 216

第10章 异常处理 219

10.1异常处理的基础知识 219

10.2异常类型 220

10.3未捕获的异常 221

10.4使用try和catch 222

10.5多条catch子句 224

10.6嵌套的try语句 226

10.7 throw 228

10.8 throws 229

10.9 finally 230

10.10 Java的内置异常 232

10.11创建自己的异常子类 233

10.12链式异常 235

10.13 JDK 7中3个新的异常特性 237

10.14使用异常 238

第11章 多线程编程 239

11.1 Java线程模型 240

11.1.1线程优先级 241

11.1.2同步 242

11.1.3消息传递 242

11.1.4 Thread类和Runnable接口 242

11.2主线程 243

11.3创建线程 244

11.3.1实现Runnable接口 245

11.3.2扩展Thread类 247

11.3.3选择一种创建方式 248

11.4创建多个线程 248

11.5使用isAlive()和join()方法 250

11.6线程优先级 252

11.7同步 253

11.7.1使用同步方法 253

11.7.2 synchronized语句 255

11.8线程间通信 257

11.9挂起、恢复与停止线程 263

11.9.1 Java 1.1以前使用的挂起、恢复和停止线程的方式 264

11.9.2挂起、恢复与停止线程的现代方式 266

11.10获取线程的状态 268

11.11使用多线程 270

第12章 枚举、自动装箱与注解(元数据) 271

12.1枚举 271

12.1.1枚举的基础知识 272

12.1.2 values()和valueOf()方法 274

12.1.3 Java枚举是类类型 275

12.1.4枚举继承自Enum类 278

12.1.5另一个枚举示例 279

12.2类型封装器 281

12.2.1 Character封装器 281

12.2.2 Boolean封装器 282

12.2.3数值类型封装器 282

12.3自动装箱 283

12.3.1自动装箱与方法 284

12.3.2表达式中发生的自动装箱/拆箱 285

12.3.3布尔型和字符型数值的自动装箱/拆箱 287

12.3.4自动装箱/拆箱有助于防止错误 287

12.3.5一些警告 288

12.4注解(元数据) 289

12.4.1注解的基础知识 289

12.4.2指定保留策略 289

12.4.3在运行时使用反射获取注解 290

12.4.4 AnnotatedELement接口 296

12.4.5使用默认值 296

12.4.6标记注解 297

12.4.7单成员注解 298

12.4.8内置注解 300

12.4.9一些限制 301

第13章I/O、 applet以及其他主题 303

13.1 I/O的基础知识 304

13.1.1流 304

13.1.2字节流和字符流 304

13.1.3预定义流 306

13.2读取控制台输入 307

13.2.1读取字符 307

13.2.2读取字符串 308

13.3向控制台写输出 310

13.4 PrintWriter类 311

13.5读/写文件 312

13.6自动关闭文件 318

13.7 applet的基础知识 321

13.8 transient和volatile修饰符 324

13.9使用instanceof运算符 324

13.10 strictfp 327

13.11本地方法 327

13.12使用断言 331

13.13静态导入 334

13.14通过this()调用重载的构造函数 336

第14章 泛型 339

14.1什么是泛型 340

14.2一个简单的泛型示例 340

14.2.1泛型只使用对象 344

14.2.2基于不同类型参数的泛型类型是不同的 344

14.2.3泛型提升类型安全性的原理 344

14.3带两个类型参数的泛型类 347

14.4泛型类的一般形式 348

14.5有界类型 349

14.6使用通配符参数 351

14.7创建泛型方法 359

14.8泛型接口 362

14.9原始类型与遗留代码 364

14.10泛型类层次 367

14.10.1使用泛型超类 367

14.10.2泛型子类 369

14.10.3泛型层次中的运行时类型比较 370

14.10.4强制转换 373

14.10.5重写泛型类的方法 373

14.11泛型的类型推断 374

14.12擦拭 376

14.13模糊性错误 379

14.14使用泛型的一些限制 381

14.14.1不能实例化类型参数 381

14.14.2对静态成员的一些限制 381

14.14.3对泛型数组的一些限制 382

14.14.4对泛型异常的限制 383

第Ⅱ部分Java库 387

第15章 字符串处理 387

15.1 String类的构造函数 388

15.2字符串的长度 390

15.3特殊的字符串操作 391

15.3.1字符串字面值 391

15.3.2字符串连接 391

15.3.3字符串和其他数据类型的连接 392

15.3.4字符串转换和toString()方法 393

15.4提取字符 394

15.4.1 charAt() 394

15.4.2 getChars() 394

15.4.3 getBytes() 395

15.4.4 toCharArray() 395

15.5比较字符串 395

15.5.1 equals()和equalsIgnoreCase() 395

15.5.2 regionMatches() 396

15.5.3 startsWith()和endsWith() 397

15.5.4 equals()与= 397

15.5.5 compareTo() 398

15.6查找字符串 399

15.7修改字符串 401

15.7.1 substring() 401

15.7.2 concat() 402

15.7.3 replace() 402

15.7.4 trim() 403

15.8使用 valueOf()转换数据 404

15.9改变字符串中字符的大小写 404

15.10其他String方法 405

15.11 StringBuffer类 406

15.11.1 StringBuffer类的构造函数 406

15.11.2 length()与capacity() 407

15.11.3 ensureCapacity() 407

15.11.4 setLength() 408

15.11.5 charAt()与setCharAt() 408

15.11.6 getChars() 409

15.11.7 append() 409

15.11.8 insert() 409

15.11.9 reverse() 410

15.11.10 delete()与deleteCharAt() 411

15.11.11 replace() 411

15.11.12 substring()) 412

15.11.13其他StringBuffer方法 412

15.12 StringBuilder类 413

第16章 探究java.lang 415

16.1基本类型封装器 416

16.1.1 Number 416

16.1.2 Double与Float 417

16.1.3理解isInfinite()与isNaN() 420

16.1.4 Byte、Short、Integer和Long 420

16.1.5 Character 427

16.1.6对Unicode代码点的附加支持 430

16.1.7 Boolean 431

16.2 Void类 432

16.3 Process类 432

16.4 Runtime类 433

16.4.1内存管理 434

16.4.2执行其他程序 435

16.5 ProcessBuilder类 436

16.6 System类 439

16.6.1使用currentTimeMillis()计时程序的执行 440

16.6.2使用arraycopy() 441

16.6.3环境属性 442

16.7 Object类 442

16.8使用clone()方法和Cloneable接口 443

16.9 Class类 445

16.10 ClassLoader类 448

16.11 Math类 448

16.11.1三角函数 448

16.11.2指数函数 449

16.11.3舍入函数 449

16.11.4其他数学方法 450

16.12 StrictMath类 452

16.13 Compiler类 452

16.14 Thread类、ThreadGroup类和Runnable接口 452

16.14.1 Runnable接口 452

16.14.2 Thread类 452

16.14.3 ThreadGroup类 454

16.15 ThreadLocal和InheritableThreadLocal类 459

16.16 Package类 459

16.17 RuntimePermission类 460

16.18 Throwable类 460

16.19 SecurityManager类 460

16.20 StackTraceElement类 460

16.21 Enum类 461

16.22 C1assValue类 462

16.23 CharSequence接口 462

16.24 Comparable接口 462

16.25 Appendable接口 463

16.26 Iterable接口 463

16.27 Readable接口 464

16.28 AutoCloseable接口 464

16.29 Thread.UncaughtException-Handler接口 464

16.30 java.lang子包 464

16.30.1 java.lang.annotation 465

16.30.2 java.lang.instrument 465

16.30.3 java.lang.invoke 465

16.30.4 java.lang.management 465

16.30.5 java.lang.ref 465

16.30.6 java.lang.reflect 465

第17章java.util第1部分:集合框架 467

17.1集合概述 468

17.2 JDK 5对集合框架的修改 469

17.2.1泛型从根本上改变了集合框架 470

17.2.2自动装箱使得使用基本类型更加容易 470

17.2.3 for-each风格的循环 470

17.3集合接口 470

17.3.1 Collection接口 471

17.3.2 List接口 473

17.3.3 Set接口 474

17.3.4 SortedSet接口 474

17.3.5 NavigableSet接口 475

17.3.6 Queue接口 476

17.3.7 Deque接口 477

17.4集合类 479

17.4.1 ArrayList类 480

17.4.2 LinkedList类 483

17.4.3 HashSet类 484

17.4.4 LinkedHashSet类 486

17.4.5 TreeSet类 486

17.4.6 PriorityQueue类 487

17.4.7 ArrayDeque类 488

17.4.8 EnumSet类 489

17.5通过迭代器访问集合 490

17.5.1使用迭代器 491

17.5.2使用for-each循环替代迭代器 493

17.6在集合中存储用户定义的类 494

17.7 RandomAccess接口 495

17.8使用映射 496

17.8.1映射接口 496

17.8.2映射类 500

17.9比较器 505

17.10集合算法 508

17.11 Arrays类 513

17.12需要泛型集合的原因 518

17.13遗留的类和接口 521

17.13.1 Enumeration接口 521

17.13.2 Vector类 521

17.13.3 Stack类 525

17.13.4 Dictionary类 527

17.13.5 Hashtable类 528

17.13.6 Properties类 532

17.13.7使用store()和load() 535

17.14集合小结 537

第18章java.util第2部分:更多实用工具类 539

18.1 StringTokenizer类 539

18.2 BitSet类 541

18.3 Date类 544

18.4 Calendar类 546

18.5 GregorianCalendar类 549

18.6 TimeZone类 550

18.7 SimpleTimeZone类 551

18.8 Locale类 552

18.9 Random类 554

18.10 Observable类 555

18.10.1 Observer接口 556

18.10.2 Observer示例 556

18.11 Timer和TimerTask类 559

18.12 Currency类 561

18.13 Formatter类 562

18.13.1 Formatter类的构造函数 563

18.13.2 Formatter类的方法 563

18.13.3格式化的基础知识 564

18.13.4格式化字符串和字符 566

18.13.5格式化数字 566

18.13.6格式化时间和日期 567

18.13.7 和%说明符 569

18.13.8指定最小字段宽度 569

18.13.9指定精度 571

18.13.10使用格式标志 572

18.13.11对齐输出 572

18.13.12空格、“+”、“0”以及“(”标志 573

18.13.13逗号标志 574

18.13.14“#:”标志 574

18.13.15大写选项 574

18.13.16使用参数索引 575

18.13.17关闭Formatter对象 577

18.13.18 printf()方法 577

18.14 Scanner类 577

18.14.1 Scanner类的构造函数 577

18.14.2扫描的基础知识 578

18.14.3一些Scanner示例 581

18.14.4设置定界符 585

18.14.5其他Scanner特性 587

18.15 ResourceBundle、ListResourceBundle和PropertyResourceBundle类 588

18.16其他实用工具类和接口 592

18.17 java.util子包 593

18.17.1 java.util.concurrent、java.util.concurrent.atomic和java.util.concurrent.locks 593

18.17.2 java.util.jar 593

18.17.3 java.util.logging 593

18.17.4 java.util.prefs 593

18.17.5 java.util.regex 594

18.17.6 java.util.spi 594

18.17.7 java.util.zip 594

第19章 输入/输出:探究Java.io 595

19.1 I/O类和接口 596

19.2 File类 597

19.2.1目录 600

19.2.2使用FilenameFilter接口 601

19.2.3 listFiles()方法 602

19.2.4创建目录 602

19.3 AutoCloseable、Closeable和Flushable接口 602

19.4 I/O异常 603

19.5关闭流的两种方式 604

19.6流类 605

19.7字节流 605

19.7.1 InputStream类 605

19.7.2 OutputStream类 606

19.7.3 FileInputStream类 606

19.7.4 FileOutputStream类 609

19.7.5 ByteArrayInputStream类 611

19.7.6 ByteArrayOutputStream类 613

19.7.7过滤的字节流 614

19.7.8缓存的字节流 614

19.7.9 SequenceInputStream类 618

19.7.10 PrintStream类 620

19.7.11 DataOutputStream和DataInputStream类 622

19.7.12 RandomAccessFile类 624

19.8字符流 625

19.8.1 Reader类 625

19.8.2 Writer类 626

19.8.3 FileReader类 627

19.8.4 FileWriter类 627

19.8.5 CharArrayReader类 628

19.8.6 CharArrayWriter类 630

19.8.7 BufferedReader类 631

19.8.8 BufferedWriter类 633

19.8.9 PushbackReader类 633

19.8.10 PrintWriter类 634

19.9 Console类 635

19.10串行化 637

19.10.1 Serializable接口 637

19.10.2 Extemalizable接口 637

19.10.3 ObjectOutput接口 638

19.10.4 ObjectOutputStream类 638

19.10.5 ObjectInput接口 639

19.10.6 ObjectInputStream类 640

19.10.7串行化示例 641

19.11流的优点 642

第20章 探究NIO 643

20.1 NIO类 643

20.2 NIO的基础知识 644

20.2.1缓存 644

20.2.2通道 646

20.2.3字符集和选择器 647

20.3 JDK 7对NIO的增强 648

20.3.1 Path接口 648

20.3.2 Files类 649

20.3.3 Path接口 651

20.3.4文件属性接口 652

20.3.5 FileSystem、FileSystems和FileStore类 654

20.4使用NIO系统 654

20.4.1为基于通道的I/O使用NIO 654

20.4.2为基于流的I/O使用NIO 663

20.4.3为路径和文件系统操作使用NIO 666

20.5 JDK 7之前基于通道的例子 674

20.5.1读文件(JDK 7之前) 674

20.5.2写文件(JDK 7之前) 677

第21章 联网 681

21.1联网的基础知识 682

21.2联网类和接口 683

21.3 InetAddress类 683

21.3.1工厂方法 684

21.3.2实例方法 685

21.4 Inet4Address类和Inet6Address类 685

21.5 TCP/IP客户端套接字 686

21.6 URL类 689

21.7 URLConnection类 691

21.8 HttpURLConnection类 694

21.9 URI类 696

21.10 cookie 696

21.11 TCP/IP服务器套接字 696

21.12数据报 697

21.12.1 DatagramSocket类 697

21.12.2 DatagramPacket类 698

21.12.3数据报示例 699

第22章Applet类 701

22.1 applet的两种类型 701

22.2 applet的基础知识 702

22.3 applet的架构 704

22.4 applet的骨架 705

22.4.1 applet的初始化和终止 706

22.4.2重写update()方法 707

22.5简单的applet显示方法 707

22.6请求重画 709

22.7使用状态栏窗口 712

22.8 HTML APPLET标签 713

22.9向applet传递参数 714

22.10 getDocumentBase()和getCodeBase() 718

22.11 AppletContext接口和showDocument()方法 718

22.12 AudioClip接口 720

22.13 AppletStub接口 720

22.14向控制台输出 720

第23章事件处理 721

23.1两种事件处理机制 722

23.2委托事件模型 722

23.2.1事件 722

23.2.2事件源 723

23.2.3事件监听器 723

23.3事件类 724

23.3.1 ActionEvent类 725

23.3.2 AdjustmentEvent类 726

23.3.3 ComponentEvent类 726

23.3.4 ContainerEvent类 727

23.3.5 FocusEvent类 727

23.3.6 InputEvent类 728

23.3.7 ItemEvent类 729

23.3.8 KeyEvent类 730

23.3.9 MouseEvent类 730

23.3.10 MouseWheelEvent类 732

23.3.11 TextEvent类 733

23.3.12 WindowEvent类 733

23.4事件源 734

23.5事件监听器接口 735

23.5.1 ActionListener接口 736

23.5.2 AdjustmentListener接口 736

23.5.3 ComponentListener接口 736

23.5.4 ContainerListener接口 736

23.5.5 FocusListener接口 736

23.5.6 ItemListener接口 736

23.5.7 KeyListener接口 737

23.5.8 MouseListener接口 737

23.5.9 MouseMotionListener接口 737

23.5.10 MouseWheelListener接口 737

23.5.11 TextListener接口 738

23.5.12 WindowFocusListener接口 738

23.5.13 WindowListener接口 738

23.6使用委托事件模型 738

23.6.1处理鼠标事件 739

23.6.2处理键盘事件 741

23.7适配器类 744

23.8内部类 746

第24章 AWT介绍:使用窗口、图形和文本 749

24.1 AWT类 750

24.2窗口基本元素 752

24.2.1 Component类 752

24.2.2 Container类 753

24.2.3 Panel类 753

24.2.4 Window类 753

24.2.5 Frame类 753

24.2.6 Canvas类 753

24.3使用框架窗口 753

24.3.1设置窗口的尺寸 754

24.3.2隐藏和显示窗口 754

24.3.3设置窗口的标题 754

24.3.4关闭框架窗口 754

24.4在applet中创建框架窗口 755

24.5创建基于窗口的程序 761

24.6在窗口中显示信息 763

24.7使用图形 763

24.7.1绘制直线 764

24.7.2绘制矩形 765

24.7.3绘制椭圆和圆 765

24.7.4绘制弧形 766

24.7.5绘制多边形 767

24.7.6改变图形的大小 767

24.8使用颜色 768

24.8.1 Color类的方法 769

24.8.2设置当前图形的颜色 770

24.8.3一个演示颜色的applet 770

24.9设置绘图模式 771

24.10使用字体 773

24.10.1确定可用字体 774

24.10.2创建和选择字体 775

24.10.3获取字体信息 777

24.11使用FontMetrics管理文本输出 778

24.11.1显示多行文本 779

24.11.2居中显示文本 781

24.11.3对齐多行文本 782

第25章 使用AWT控件、布局管理器和菜单 787

25.1控件的基础知识 788

25.1.1添加和移除控件 788

25.1.2响应控件 788

25.1.3 HeadlessException异常 788

25.2使用标签 789

25.3使用命令按钮 790

25.4使用复选框 793

25.5使用复选框组 795

25.6使用下拉列表 796

25.7使用列表框 798

25.8管理滚动条 801

25.9使用TextField 804

25.10使用TextArea 807

25.11理解布局管理器 808

25.11.1 FlowLayout布局管理器 809

25.11.2 BorderLayout布局管理器 811

25.11.3使用Insets 812

25.11.4 GridLayout布局管理器 814

25.11.5 CardLayout布局管理器 815

25.11.6 GridBagLayout布局管理器 818

25.12菜单栏和菜单 823

25.13对话框 829

25.14 FileDialog类 834

25.15 扩展AWT控件以处理事件 835

25.15.1扩展按钮 836

25.15.2扩展复选框 837

25.15.3扩展复选框组 838

25.15.4扩展下拉列表 839

25.15.5扩展列表框 840

25.15.6扩展滚动条 841

25.16关于重载paint()方法 842

第26章 图像 843

26.1文件格式 844

26.2图像基础:创建、加载与显示 844

26.2.1创建Image对象 844

26.2.2加载图像 845

26.2.3显示图像 845

26.3 ImageObserver接口 846

26.4双缓存 848

26.5 MediaTracker类 850

26.6 ImageProducer接口 853

26.7 ImageConsumer接口 855

26.8 ImageFilter类 857

26.8.1 CropImageFilter类 858

26.8.2 RGBImageFilter类 860

26.9单元格动画 870

26.10其他图像类 873

第27章 并发实用工具 875

27.1并发API包 876

27.1.1 java.util.concurrent包 876

27.1.2 java.util.concurrent.atomic包 877

27.1.3 java.util.concurrent.locks包 877

27.2使用同步对象 877

27.2.1 Semaphore类 878

27.2.2 CountDownLatch类 884

27.2.3 CyclicBarrier类 885

27.2.4 Exchanger类 888

27.2.5 Phaser类 890

27.3使用执行器 898

27.3.1一个简单的执行器示例 898

27.3.2使用Callable和Future接口 900

27.4 TimeUnit枚举 903

27.5并发集合 904

276锁 905

27.7原子操作 908

27.8通过Fork/Join Framework进行并行编程 909

27.8.1主要的Fork/Join类 909

27.8.2分而治之的策略 912

27.8.3一个简单的Fork/Join示例 913

27.8.4理解并行级别带来的影响 915

27.8.5一个使用RecursiveTask〈V〉的例子 918

27.8.6异步执行任务 921

27.8.7取消任务 921

27.8.8确定任务的完成状态 921

27.8.9重新启动任务 922

27.8.10深入研究 922

27.8.11关于Fork/Join Framework的一些提示 923

27.9并发实用工具与Java传统方式的比较 924

第28章 正则表达式和其他包 925

28.1核心Java API包 926

28.2正则表达式处理 927

28.2.1 Pattern类 928

28.2.2 Matcher类 928

28.2.3正则表达式的语法 929

28.2.4演示模式匹配 929

28.2.5模式匹配的两个选项 935

28.2.6探究正则表达式 935

28.3反射 936

28.4远程方法调用 939

28.5文本格式化 943

28.5.1 DateFormat类 943

28.5.2 SimpleDateFormat类 945

第Ⅲ部分 使用Java开发软件 951

第29章Java Bean 951

29.1 Java Bean是什么 952

29.2 Java Bean的优势 952

29.3反省 952

29.3.1属性的设计模式 952

29.3.2事件的设计模式 954

29.3.3方法与设计模式 954

29.3.4使用Beanlnfo接口 955

29.4绑定属性与约束属性 955

29.5持久性 955

29.6定制器 956

29.7 Java Bean API 956

29.7.1 Introspector类 958

29.7.2 PropertyDescriptor类 958

29.7.3 EventSetDescriptor类 958

29.7.4 MethodDescriptor类 958

29.8一个Bean示例 958

第30章Swing简介 963

30.1 Swing的起源 964

30.2 Swing以AWT为基础 964

30.3两个关键的Swing特性 964

30.3.1 Swing组件是轻量级的 964

30.3.2 Swing支持可插入外观 965

30.4 MVC连接 965

30.5组件与容器 966

30.5.1组件 966

30.5.2容器 967

30.5.3顶级容器窗格 967

30.6 Swing包 967

30.7一个简单的Swing应用程序 968

30.8事件处理 972

30.9创建Swing applet 975

30.10在Swing中绘图 977

30.10.1绘图的基础知识 977

30.10.2计算可绘制区域 978

30.10.3一个绘图示例 979

第31章 探究Swing 983

31.1 JLabel与ImageIcon 984

31.2 JTextField 985

31.3 Swing按钮 987

31.3.1 JButton 988

31.3.2 JToggleButton 990

31.3.3复选框 992

31.3.4单选按钮 994

31.4 JTabbedPane 996

31.5 JScrollPane 998

31.6 JList 1000

31.7 JComboBox 1003

31.8树 1006

31.9 JTable 1009

31.10继续研究Swing 1011

第32章servlet 1013

32.1背景 1013

32.2 sevelet的生命周期 1014

32.3 Servlet开发选项 1015

32.4使用Tomcat 1015

32.5一个简单的servlet 1017

32.5.1创建和编译servlet源代码 1017

32.5.2启动Tomcat 1018

32.5.3启动Web浏览器并请求servlet 1018

32.6 servlet API 1018

32.7 javax.servlet包 1018

32.7.1 Servlet接口 1019

32.7.2 ServletConfig接口 1020

32.7.3 ServletContext接口 1020

32.7.4 ServletRequest接口 1020

32.7.5 ServletResponse接口 1021

32.7.6 GenericServlet类 1022

32.7.7 ServletInputStream类 1022

32.7.8 ServletOutputStream类 1022

32.7.9 servlet异常类 1022

32.8读取servlet参数 1022

32.9 javax.servlet.http包 1024

32.9.1 HttpServletRequest接口 1025

32.9.2 HttpServletResponse接口 1025

32.9.3 HttpSession接口 1026

32.9.4 HttpSessionBindingListener接口 1027

32.9.5 Cookie类 1027

32.9.6 HttpServlet类 1028

32.9.7 HttpSessionEvent类 1029

32.9.8 HttpSessionBindingEvent类 1030

32.10处理HTTP请求和响应 1030

32.10.1处理HTTP GET请求 1030

32.10.2处理HTTPPOST请求 1032

32.11使用cookie 1033

32.12会话跟踪 1035

第Ⅳ部分Java应用 1039

第33章applet和servlet在金融领域的应用 1039

33.1计算贷款的还款额 1040

33.1.1 RegPay中声明的变量 1044

33.1.2 init()方法 1044

33.1.3 makeGUI()方法 1044

33.1.4 actionPerformed()方法 1047

33.1.5 compute()方法 1048

33.2计算投资的未来收益 1048

33.3计算为达到未来收益所需要的初始投资额 1052

33.4计算为拿到期望的养老金所需要的初始投资额 1056

33.5计算给定投资的最大收益 1060

33.6计算贷款余额 1064

33.7创建应用于金融领域的servlet 1068

33.7.1将RegPay applet转换为servlet 1069

33.7.2 RegPayS servlet 1069

33.8一些尝试 1072

第34章 使用Java创建下载管理器 1073

34.1理解Internet下载 1074

34.2下载管理器概述 1074

34.3 DownLoad类 1075

34.3.1 DownLoad类的变量 1079

34.3.2 DownLoad类的构造函数 1079

34.3.3 download()方法 1079

34.3.4 run()方法 1079

34.3.5 stateChanged()方法 1083

34.3.6动作和访问器方法 1083

34.4 ProgressRenderer类 1083

34.5 DownloadsTableModel类 1084

34.5.1 addDownload()方法 1086

34.5.2 clearDownload()方法 1087

34.5.3 getColumnClass()方法 1087

34.5.4 getValueAt()方法 1087

34.5.5 update()方法 1088

34.6 DownloadManager类 1088

34.6.1 DownloadManager类的变量 1094

34.6.2 DownloadManager类的构造函数 1095

34.6.3 verifyUrl()方法 1095

34.6.4 tableSelectionChanged()方法 1096

34.6.5 updateButtons()方法 1096

34.6.6处理动作事件 1097

34.7编译和运行下载管理器 1098

34.8进一步完善下载管理器 1098

附录 使用Java的文档注释 1099

返回顶部