Java开发手册由浅入深、全面系统地介绍Java基础、面向对象、Java常用技术、界面编程及典型引用等相关知识。书中的每一张都提供了大量的实例程式,以方便读者学习。
无论对于Java初学者,还是有一定基础的高级用户,本书都是一本难得的参考书。本书非常适合在校的本科生、研究生及教师使用,还适合广大科研和工程技术人员研究参考。
基本介绍
- 书名:Java开发手册
- 作者:桂颖,谷涛
- ISBN:978-7-121-20916-1
- 类别:计算机工具书
- 页数:848
- 定价:99.00
- 出版社:电子工业出版社
- 出版时间:2013年07月
- 装帧:平装
- 开本:16
书本简介
本书由浅入深、全面系统地介绍Java编程和开发的方方面面。书中各章提供了大量有针对性的实例,供读者实战演练。本书针对初学和自学读者的特点,按照实际开发流程对Java语言的程式设计进行讲解,简明易懂、实用性强。书中以通俗易懂的语言介绍Java语言,力求做到深入浅出。
全书共30章,分为5篇。Java基础篇介绍Java的概念、数据类型、运算符、流程控制语句及数组等内容;面向对象篇介绍对象和类、访问控制符、继承、接口、封装类及异常的处理;Java常用技术篇介绍字元串、集合、内部类、执行绪和相关算法的套用;界面编程篇介绍Java的Swing编程、相关布局使用的控制项和图像处理等知识;高级技术篇介绍网路编程的基本知识、输入/输出流的使用和JDBC资料库开发技术。
无论对于Java的初学者,还是有一定基础的高级用户,本书都是一本难得的参考书。本书非常适合使用Java进行编程和开发的本科生、研究生及教师阅读,还适合广大科研和工程技术人员研读。
书本目录
第1篇 Java基础
第1章 初步认识Java1
1.1 Java的概念 1
1.1.1 Java是什幺1
1.1.2 Java平台 1
1.1.3 Java的作业系统2
1.1.4 Java的优点2
1.2 Java的历史 3
1.2.1 Java的由来3
1.2.2 Java的发展4
1.3 如何配置Java开发环境 4
1.3.1 开发工具包4
1.3.2 运行环境 4
1.3.3 JDK的安装和下载 5
1.3.4 环境变数的设定6
1.3.5 环境变数的测试7
1.4 第一个应用程式——HelloWorld 7
1.4.1 HelloWorld程式 7
1.4.2 编译与运行8
1.4.3 编译和运行命令9
1.5 小结 12
第2章 基本数据类型13
2.1 数据类型 13
2.1.1 整型 13
2.1.2 浮点型16
2.1.3 字元型19
2.1.4 布尔型20
2.2 常量 21
2.2.1 标识符21
2.2.2 常量 22
2.3 变数 24
2.3.1 声明变数及初始化 24
2.3.2 变数的作用域 26
2.3.3 数据类型的自动转换28
2.4 基本数据类型之间的转换 29
2.4.1 自动转换类型 29
2.4.2 强制转换类型 31
2.5 基本数据类型的对象包装类 34
2.6 注释 35
2.6.1 单行注释 36
2.6.2 区域注释 36
2.6.3 文档注释 36
2.7 小结 38
第3章 运算符详解 39
3.1 算术运算符 39
3.1.1 加法运算符39
3.1.2 减法运算符42
3.1.3 乘法运算符43
3.1.4 除法运算符43
3.1.5 取余运算符44
3.1.6 自增、自减运算44
3.2 关係与逻辑运算 46
3.2.1 等于/不等于运算 46
3.2.2 比较大小运算 47
3.2.3 “与”运算 48
3.2.4 “或”运算 49
3.2.5 “非”运算 50
3.3 三元运算符 50
3.4 位运算 51
3.5 移位运算 53
3.5.1 “<<”左移运算 53
3.5.2 “>>”右移运算 53
3.5.3 “>>>”无符号右移运算 54
3.5.4 具体实例 55
3.6 赋值运算 55
3.6.1 普通赋值运算 56
3.6.2 运算赋值运算 56
3.6.3 括弧及运算符间的优先权关係57
3.7 java.lang.Math类 57
3.7.1 数学常量 57
3.7.2 常用数学函式方法 58
3.8 小结 60
第4章 流程控制语句61
4.1 if语句 61
4.1.1 常用语句形式 61
4.1.2 完整语句形式 62
4.2 if语句的嵌套63
4.3 switch语句 65
4.3.1 switch判断语法65
4.3.2 判断表达式67
4.3.3 case表达式68
4.4 switch实例 69
4.5 while循环语句 71
4.6 do-while循环语句73
4.7 for循环语句 74
4.7.1 for循环语法 74
4.7.2 for循环实例 76
4.7.3 for实现其他循环 77
4.8 break语句 78
4.9 continue语句79
4.10 小结 81
第5章 不可或缺的数组 82
5.1 数组的概念 82
5.2 一维数组 83
5.2.1 数组的声明83
5.2.2 创建数组及初始化 83
5.2.3 数组的结构84
5.2.4 数组长度及越界84
5.2.5 数组程式实例 85
5.3 多维数组 86
5.3.1 多维数组的声明86
5.3.2 创建多维数组 86
5.3.3 多维数组结构及初始化 87
5.4 访问多维数组 88
5.5 数组的相关用法 90
5.5.1 複製数组 90
5.5.2 数组修饰符92
5.5.3 搜寻数组 93
5.5.4 排序数组 95
5.5.5 Arrays类的sort方法98
5.5.6 数组的比较99
5.6 小结 100
第2篇 面向对象
第6章 对象和类的“二人转”101
6.1 什幺是面向对象 101
6.1.1 面向对象的由来101
6.1.2 面向过程与面向对象思想的碰撞 102
6.1.3 面向对象的背景及特点 104
6.2 类与对象 104
6.2.1 成员变数 105
6.2.2 成员变数的默认值 107
6.2.3 对象引用变数 108
6.3 类的方法 110
6.4 方法和变数引用 111
6.4.1 调用不存在的方法或成员变数111
6.4.2 用空引用进行调用 112
6.4.3 数组的空引用问题 113
6.5 局部变数 113
6.5.1 局部变数的作用域 113
6.5.2 局部变数的初始化 114
6.6 变长参数 117
6.7 this对象引用118
6.8 系统常用类 120
6.8.1 Date类 120
6.8.2 GregorianCalendar类122
6.8.3 常用系统已有类124
6.9 小结 125
第7章 Java中的访问控制符 126
7.1 类的访问控制 126
7.1.1 public级别 126
7.1.2 默认访问级别 128
7.2 成员的访问控制 130
7.2.1 公共访问 131
7.2.2 保护访问 132
7.2.3 默认访问 133
7.2.4 私有访问 134
7.2.5 访问级别与数据封装136
7.3 static关键字 137
7.3.1 静态成员变数 138
7.3.2 静态最终成员变数 139
7.3.3 static方法 140
7.3.4 static代码块 140
7.4 final的变数 141
7.4.1 final成员变数 141
7.4.2 final局部变数 144
7.5 package的使用 146
7.5.1 package的声明与创建 146
7.5.2 引入package资源 147
7.5.3 静态引入package 150
7.6 小结 152
第8章 父与子的继承153
8.1 什幺是继承 153
8.1.1 类和类的关係 153
8.1.2 继承性156
8.1.3 类的继承 156
8.2 继承与隐藏 157
8.2.1 成员变数的继承157
8.2.2 成员变数的隐藏160
8.3 对象 162
8.3.1 对象引用类型 162
8.3.2 强制类型转换 162
8.3.3 对象调用成员 164
8.3.4 对象赋值和比较165
8.4 方法的继承 167
8.5 方法的重写 168
8.5.1 重写的条件170
8.5.2 返回类型的规则171
8.5.3 访问级别 173
8.6 重写与继承的关係 174
8.6.1 静态方法没有重写 175
8.6.2 重写扩展父类功能 177
8.6.3 替代性178
8.7 方法的重载 178
8.7.1 重载的规则178
8.7.2 重载方法的匹配179
8.7.3 重写与重载183
8.8 final与继承 183
8.8.1 最终的类 183
8.8.2 最终的方法184
8.9 abstract与继承 185
8.9.1 抽象类185
8.9.2 抽象方法 186
8.10 继承的多态 189
8.11 小结 191
第9章 接口的世界 192
9.1 接口的概述 192
9.2 接口中的成员变数 193
9.3 接口中的方法 195
9.4 接口引用的使用 198
9.4.1 可以指向的对象类型198
9.4.2 接口引用间的赋值 198
9.4.3 类引用与接口引用间的赋值 200
9.4.4 接口中方法无法使用的修饰符201
9.5 接口与抽象类 203
9.6 接口的多态 205
9.7 接口回调 207
9.8 instanceof的使用 208
9.8.1 基本语法使用 208
9.8.2 不允许进行测试的情况 211
9.9 小结 212
第10章 构造器套用 213
10.1 构造器的概念 213
10.2 访问限制修饰符与构造器 213
10.2.1 公有类型构造器 213
10.2.2 默认与保护类型构造器 214
10.2.3 私有类型构造器以及静态工厂方法 215
10.3 构造器与返回类型 216
10.4 创建对象 218
10.5 重载构造器 219
10.6 级联调用的构造器 220
10.6.1 如何调用构造器 220
10.6.2 级联调用 221
10.6.3 默认构造器 223
10.7 自定义构造器 224
10.8 构造器不能继承 225
10.9 调用兄弟构造器 226
10.9.1 调用语法 226
10.9.2 注意事项 227
10.10 单列模式 229
10.11 程式的载入 230
10.12 小结 232
第11章 迷惑的封装类 233
11.1 封装类是什幺 233
11.2 字元串与基本数据类型值的转换 235
11.3 封装类与基本数据类型的转换 238
11.4 字元串与封装类的转换 239
11.5 其他常用方法 239
11.5.1 静态工厂方法 239
11.5.2 isNaN()方法 241
11.5.3 equals()方法 242
11.5.4 toString()方法 244
11.5.5 进制转换方法 244
11.6 自动打包/解包 245
11.7 特殊数值计算 247
11.7.1 计算特大整数 248
11.7.2 精确计算浮点型 250
11.8 小结 251
第12章 如何处理异常 252
12.1 异常处理 252
12.1.1 捕获异常的try和catch 252
12.1.2 finally语句256
12.1.3 try、catch和finally语句259
12.2 捕获异常 261
12.3 未捕获异常 263
12.4 再次抛出异常 264
12.4.1 异常的再抛出 264
12.4.2 显性再抛出 265
12.4.3 隐性再抛出 268
12.5 方法重写对抛出异常的限制 269
12.6 自定义异常 271
12.6.1 自己创建异常类 271
12.6.2 使用自定义异常 273
12.6.3 显性再抛出异常的作用 274
12.7 异常的匹配 277
12.8 断言 279
12.8.1 为什幺要引入断言 279
12.8.2 断言的语法规则 280
12.8.3 断言与编译 280
12.8.4 启动断言执行代码 281
12.8.5 防止滥用断言 282
12.9 小结 283
第3篇 Java常用技术
第13章 字元串套用 284
13.1 String类 284
13.2 String对象的记忆体机制 289
13.3 String记忆体机制的优势 290
13.4 String对象特殊机制的劣势 294
13.5 StringBuffer类 295
13.5.1 StringBuffer类的优势 295
13.5.2 编写方法链 297
13.5.3 StringBuffer类的重要方法 298
13.6 StringBuilder类 300
13.7 正则表达式 301
13.7.1 正则表达式的语法 302
13.7.2 Pattern与Matcher类的综合实例 304
13.8 在String类中使用正则表达式 308
13.8.1 匹配检查 308
13.8.2 查找替换 310
13.8.3 对字元串进行分析 311
13.9 小结 312
第14章 集合的使用 313
14.1 集合框架的结构 313
14.2 Object类 314
14.2.1 toString方法的重写314
14.2.2 equals方法 315
14.2.3 hashCode方法 317
14.3 equals与hashCode方法的重写318
14.4 Ordered与Sorted的接口 322
14.5 列表 323
14.5.1 List接口 323
14.5.2 数组实现列表 324
14.6 向量 326
14.7 连结实现列表 327
14.7.1 依赖性倒置原理 328
14.7.2 将数组转换为列表 329
14.8 集合 330
14.8.1 Set接口 330
14.8.2 HashSet类331
14.8.3 equals与hashCode方法重写的作用 332
14.8.4 LinkedHashSet类的使用 335
14.9 SortedSet接口与TreeSet类 336
14.10 自定义Sorted集合的类 338
14.10.1 定製SortedSet的排序规则 340
14.10.2 集合的遍历 343
14.10.3 使用for-each循环遍历集合 345
14.11 映射 346
14.11.1 Map接口346
14.11.2 HashMap类 347
14.11.3 Hashtable类 348
14.11.4 LinkedHashMap类 349
14.12 SortedMap接口与TreeMap类351
14.13 映射的遍历实例 353
14.14 栈的实现 355
14.14.1 Stack类 355
14.14.2 Deque接口 356
14.14.3 栈计算数学表达式358
14.15 集合元素的常用操作 361
14.16 小结 368
第15章 内部类套用 369
15.1 非静态内部类 369
15.2 在外部类中创建内部类 369
15.3 在外部类外创建内部类 371
15.4 内部类与外部类之间的成员互访 373
15.4.1 在内部类中访问外部类的成员 373
15.4.2 在外部类中访问内部类的成员 374
15.5 预定义对象引用this 375
15.6 局部内部类 376
15.6.1 定义局部内部类及创建 376
15.6.2 局部变数与局部内部类 377
15.6.3 静态方法中的局部内部类 380
15.7 静态内部类 381
15.8 静态/非静态内部类的区别383
15.9 匿名内部类 383
15.10 内部类的理解 389
15.11 内部接口 390
15.12 小结 393
第16章 多执行绪的功力 394
16.1 执行绪的概念 394
16.2 自定义执行绪 395
16.2.1 继承Thread类 395
16.2.2 实现Runnable接口 395
16.2.3 两种方式的比较 396
16.3 创建执行绪对象 396
16.3.1 继承Thread类方式 396
16.3.2 实现Runnable接口方式 397
16.4 启动执行绪 398
16.5 同时使用多个执行绪 400
16.6 执行绪的状态 401
16.7 执行绪的使用 403
16.7.1 睡眠使用 403
16.7.2 执行绪的优先权 405
16.7.3 执行绪的让步 407
16.7.4 守护执行绪 410
16.8 同步执行绪 411
16.8.1 使用同步 412
16.8.2 同步调度方法 415
16.9 “生产者—消费者”案例 415
16.10 notify方法 420
16.11 同步语句块 421
16.12 执行绪的死锁 424
16.13 注意事项 426
16.14 获取运行执行绪 427
16.15 volatile关键字 428
16.16 小结 429
第17章 高级执行绪 430
17.1 执行绪池 430
17.2 固定尺寸执行绪池 430
17.2.1 自定义尺寸固定执行绪池实例 431
17.2.2 单任务执行绪池实例 433
17.2.3 可变尺寸执行绪池实例 434
17.2.4 延迟执行绪池的实例 436
17.3 使用自定义执行绪池 437
17.4 有返回值的执行绪调用 440
17.4.1 Callable接口 440
17.4.2 Future接口 440
17.4.3 Callable与Future接口的使用实例441
17.5 封锁资源 442
17.5.1 Lock接口与ReentrantLock类443
17.5.2 ReentrantLock锁使用实例 443
17.5.3 ReadWriteLock接口与ReentrantReadWriteLock类 446
17.5.4 ReentrantReadWriteLock读/写锁使用实例 447
17.6 信号量 450
17.6.1 Semaphore类 450
17.6.2 Semaphore类使用实例 451
17.7 伫列 453
17.8 阻塞栈 459
17.8.1 BlockingDeque接口与LinkedBlockingDeque类 459
17.8.2 LinkedBlockingDeque类的使用实例 460
17.9 执行绪安全的单变数操作 461
17.9.1 atomic包 461
17.9.2 atomic包中类的使用实例 462
17.10 障碍器 463
17.10.1 CyclicBarrier类 464
17.10.2 CyclicBarrier类的使用实例 464
17.11 小结 466
第18章 记忆体管理技术 467
18.1 程式中的“垃圾”是什幺 467
18.2 “垃圾”收集器 470
18.3 如何收集“垃圾” 472
18.3.1 finalize重写 472
18.3.2 finalize安全问题 474
18.4 最终守护者实例 476
18.5 非执行绪“垃圾” 477
18.6 执行绪“垃圾” 479
18.7 三种特殊的引用 481
18.7.1 弱引用实例 481
18.7.2 软引用实例 483
18.7.3 幻影引用实例 485
18.8 小结 485
第19章 数据结构和算法 486
19.1 栈和伫列 486
19.1.1 栈的套用 486
19.1.2 伫列的套用 489
19.2 三种排序 492
19.2.1 冒泡排序 492
19.2.2 选择排序 495
19.2.3 插入排序 498
19.3 小结 501
第4篇 界面编程
第20章 Swing编程 502
20.1 Swing是什幺 502
20.2 第一个Swing小程式 502
20.3 JFrame类 504
20.4 事件处理 508
20.4.1 事件处理模型 509
20.4.2 事件层次结构 510
20.5 窗体事件 511
20.6 事件适配器 514
20.7 容器 516
20.8 JPanel类 517
20.9 JLabel类 518
20.10 JButton类 521
20.11 监听器与事件源对应关係的研究 524
20.12 小结 527
第21章 布局流行设计 528
21.1 布局管理器概述 528
21.2 常用布局管理器 528
21.3 FlowLayout流布局的使用 529
21.3.1 流布局简介 529
20.3.2 流布局使用实例 531
21.4 GridLayout格线布局 532
21.4.1 格线布局简介 532
21.4.2 格线布局使用实例 533
21.5 BorderLayout框线布局 535
21.5.1 框线布局简介 536
21.5.2 框线布局使用实例 537
21.6 空布局 539
21.6.1 空布局简介 539
21.6.2 空布局使用实例 540
21.7 CardLayout卡片布局 541
21.7.1 卡片布局简介 541
21.7.2 卡片布局使用实例 543
21.8 BoxLayout箱式布局 545
21.8.1 箱式布局简介 545
21.8.2 Box容器简介 547
21.8.3 Box容器与BoxLayout布局管理器使用实例548
21.9 弹簧布局 551
21.9.1 弹簧布局简介 551
21.9.2 控制项与容器框线之间使用支架 551
21.9.3 控制项与容器框线之间使用弹簧 552
21.10 SpringLayout类 554
21.11 SpringLayout.Constraints内部类 555
21.12 Spring类 556
21.13 弹簧布局使用实例 557
21.14 弹簧布局描述法使用实例 558
21.15 小结 561
第22章 各种Swing控制项 562
22.1 控制项类 562
22.2 文本框与密码框的使用实例 565
22.3 文本区使用实例 569
22.4 开关按钮使用实例 574
22.5 单选按钮与複选框 577
22.5.1 JRadioButton类 577
22.5.2 ButtonGroup类578
22.5.3 JCheckBox类 578
22.6 ItemEvent事件 579
22.7 ItemEvent事件实例 579
22.8 单选按钮与複选框的
综合实例582
22.9 小结 585
第23章 选单、工具列和对话框的使用 586
23.1 选单 586
23.2 JMenuBar类587
23.2.1 使用窗体提供的setJMenuBar方法 588
23.2.2 使用传统的add()方法 588
23.3 JMenuItem类 589
23.3.1 为选单项添加助记符 590
23.3.2 为选单项设定快捷键 590
23.4 JMenu类 591
23.5 JRadioButtonMenuItem类 593
23.6 JCheckBoxMenuItem类 593
23.7 选单使用实例 594
23.8 弹出式选单实例 597
23.9 滑鼠事件使用实例 598
23.10 工具列的开发使用实例 602
23.11 对话框使用实例 606
23.11.1 JDialog类简介 606
23.11.2 JOptionPane类简介 607
23.11.3 JOptionPane对话框使用实例 609
23.12 档案选择器 611
23.13 颜色选择器 614
23.14 档案、颜色对话框使用实例 615
23.15 小结 617
第24章 经典的树状列表 618
24.1 树的专有名词 618
24.2 JTree类619
24.3 树模型 623
24.4 树的节点 625
24.5 树的路径 628
24.6 树的相关事件 629
24.6.1 TreeSelectionEvent事件 629
24.6.2 TreeExpansionEvent事件630
24.6.3 TreeModelEvent事件 631
24.7 树节点的绘製 632
24.7.1 TreeCellRenderer接口 632
24.7.2 DefaultTreeCellRenderer类 632
24.7.3 自定义绘製器实例 633
24.8 树状列表的综合实例 635
24.8.1 实例概述 635
24.8.2 搭建界面 636
24.8.3 信息提示功能 638
24.8.4 节点增删功能 640
24.8.5 图示更改功能 643
24.9 小结 646
第25章 表格製造 647
25.1 表格简介 647
25.2 JTable类 648
25.2.1 使用JTable的简单实例 650
25.2.2 表格的数据模型 652
25.2.3 表格模型的使用实例 655
25.3 表格列 657
25.3.1 TableColumnModel接口 658
25.3.2 DefaultTableColumnModel类 659
25.4 表格的相关事件 661
25.4.1 TableColumnModelEvent事件 661
25.4.2 TableModelEvent事件 662
25.4.3 ListSelectionEvent事件简介 662
25.4.4 表格事件使用实例 663
25.5 表格绘製器 665
25.5.1 TableCellRenderer接口 666
25.5.2 DefaultTableCellRenderer类简介 666
25.5.3 自定义表格绘製器 667
25.6 表格编辑器 668
25.6.1 TableCellEditor接口 668
25.6.2 AbstractCellEditor类 668
25.6.3 DefaultCellEditor类 669
25.6.4 为特定的类型指定编辑器 669
25.7 自定义表格编辑器与绘製器的使用实例 670
25.7.1 实例概述 670
25.7.2 界面框架的搭建 670
25.7.3 自定义表格以及表格控制项的添加 671
25.7.4 自定义绘製器 673
25.7.5 自定义编辑器的添加 674
25.8 表格中的排序 677
25.8.1 RowSorter类 678
25.8.2 DefaultRowSorter类678
25.8.3 TableRowSorter类简介 679
25.9 表格中的过滤 680
25.10 表格排序与过滤的使用实例 682
25.10.1 实例概述682
25.10.2 搭建界面框架683
25.10.3 添加表格684
25.10.4 添加排序器 685
25.10.5 添加设定过滤条件的控制项 686
25.10.6 表格设定过滤器 688
25.11 小结 691
第26章 图形绘製与动画 692
26.1 绘製简单图形 692
26.1.1 可以充当画布的控制项 692
26.1.2 绘图的paint方法 692
26.2 画笔 693
26.2.1 Graphics对象的获取 694
26.2.2 坐标系统 694
26.3 调配颜色 696
26.4 图形绘製的使用实例 697
26.5 绘製文本 698
26.5.1 drawString方法 698
26.5.2 控制字型 698
26.5.3 文本绘製使用实例 700
26.6 Java 2D701
26.7 线条的粗细控制 702
26.8 渐变颜色 704
26.9 图形变换 706
26.10 异或模式绘图 708
26.11 抗锯齿 709
26.12 动画 710
26.12.1 编写动画的原理 710
26.12.2 重新绘製710
26.13 Timer类 711
26.14 简单动画使用实例 712
26.15 小结 714
第27章 处理图像 715
27.1 载入与绘製 715
27.2 图示 718
27.2.1 Icon接口 719
27.2.2 ImageIcon类 721
27.3 处理图像编码 723
27.3.1 JPEG编码器 723
27.3.2 GifEncoder编码器 724
27.4 图像抓取 726
27.4.1 createScreenCapture方法 726
27.4.2 抓屏功能使用实例 726
27.5 图像滤镜的开发 730
27.6 图像灰度处理使用实例 731
27.7 RGB色彩通道过滤 734
27.8 RGB色彩通道过滤使用实例 735
27.9 卷积滤镜 738
27.10 卷积滤镜使用实例 740
27.11 小结 743
第5篇 高级技术
第28章 网路编程的世界 744
28.1 网路编程简介 744
28.2 网路传输协定 745
28.3 Internet地址(InetAddress类) 746
28.3.1 创建InetAddress对象的方法746
28.3.2 InetAddress的其他方法 746
28.4 Socket(套接字) 747
28.5 Socket使用实例 748
28.5.1 客户端 748
28.5.2 伺服器端 749
28.5.3 程式运行结果 751
28.6 UDP协定网路通信(Datagram) 752
28.7 面向无连线的使用实例 752
28.7.1 传送端程式示例 752
28.7.2 接收端程式示例 754
28.7.3 程式运行结果 755
28.8 URL的网路编程 756
28.8.1 URL类与URL的解析 756
28.8.2 URLConnection类 757
28.8.3 获取远程图像 758
28.8.4 获取远程文档 759
28.8.5 获取远程音频 761
28.9 小结 762
第29章 你来我往的I/O流763
29.1 流的简介 763
29.2 档案File 764
29.2.1 档案或目录的生成 764
29.2.2 档案名称的处理 764
29.2.3 档案属性测试 765
29.2.4 普通档案信息和工具 765
29.2.5 目录操作 765
29.3 File类使用实例 765
29.4 RandomAccessFile类 767
29.4.1 构造方法 767
29.4.2 档案指针的操作 767
29.5 RandomAccessFile使用实例 767
29.6 位元组流InputStream、OutputStream 770
29.6.1 输入、输出流 770
29.6.2 档案输入、输出流 772
29.6.3 缓冲输入、输出流 773
29.6.4 数据输入、输出流 775
29.6.5 对象输入、输出流 776
29.7 字元流Reader、Writer 780
29.7.1 字元读、写流 780
29.7.2 输入、输出流 781
29.7.3 档案读、写字元流 782
29.7.4 字元缓冲区读、写流 783
29.8 小结 784
第30章 JDBC资料库套用技术 785
30.1 资料库套用架构模型 785
30.1.1 两层结构模型 785
30.1.2 三层结构模型 786
30.2 JDBC的层次结构787
30.3 JDBC编程入门 788
30.3.1 资料库的创建 788
30.3.2 JDBC-ODBC连线桥 789
30.3.3 载入JDBC驱动792
30.4 建立资料库连线 793
30.5 SQL命令 794
30.6 结果集 795
30.7 连线资料库使用实例 796
30.8 预编译 797
30.9 访问其他资料库 800
30.9.1 MySQL资料库的访问 800
30.9.2 Oracle资料库的访问 802
30.10 事务 804
30.10.1 编写事务804
30.10.2 批处理 807
30.11 可滚动结果集 809
30.12 可滚动与不可滚动结果集的比较 810
30.13 控制游标移动 810
30.14 元数据 813
30.15 资料库综合实例 817
30.16 小结 834
书本前言
Java代表了当今国际科学计算软体的先进水平,套用领域非常广泛。很多人都希望将Java语言套用于自己的项目和实践中,从而可以直观方便地进行开发、计算和设计工作。编写这本书的目的,就是为了向读者全方位介绍Java编程和开发技术。
本书由浅入深、全面系统地介绍Java基础、面向对象、Java常用技术、界面编程及高级技术套用等相关知识。书中的每一章都提供了大量的实例程式,以方便读者进行练习和学习。每个例程都经过精挑细选,具有很强的针对性,适合各个阶段的读者学习。本书既注重基础知识,又非常注重实践,读者可以快速上手并迅速提高。通过学习本书内容,读者不仅可以全面掌握Java编程和开发技术,还可以获得快速分析和解决实际问题的能力,从而能够在较短的时间内,以较好的效果来解决实际的工程和学习问题,并提升工作、学习效率。
本书特点
1.结构合理,内容全面、系统
本书详细介绍Java编程基础、面向对象思想、常用开发技术、界面编程及高级技术套用,将实际项目开发经验贯穿于全书,项目内容非常丰富。在内容的安排上,则根据读者的学习习惯和内容的梯度合理安排,更加适合读者学习。
2.叙述翔实,例程丰富
本书有详细的例程,每个例子都经过精挑细选,有很强的针对性。书中的程式都有完整的代码,而且代码非常简洁和高效,便于读者学习和调试。读者也可以直接重用这些代码来解决自己的问题。
3.结合实际,编程技巧贯穿其中
Java编程非常灵活,所以本书写作时特意给出了大量的实用编程技巧,这些技巧的灵活使用,将会让你事半功倍。
4.语言通俗,图文并茂
对于程式的运行结果,本书给出了大量的图片。本书不仅注重基础知识,而且也非常注重实践,以便让读者快速上手,迅速掌握Java知识。
内容体系
本书共30章,分为5篇,各篇对应的章节和具体内容介绍如下。
第1篇包括第1~5章,主要介绍Java的基础知识,讲解Java的安装和基本操作,数据类型、运算符及数组的操作。
第2篇包括第6~12章,主要介绍Java面向对象思想,详细讲解继承、接口、构造器、封装类及怎样处理异常等重要知识。
第3篇包括第13~19章,主要介绍Java开发中经常用到的相关技术,包括字元串的套用、集合的使用、内部类的使用、执行绪的技术,以及相关算法。这些都是学好Java的必备知识点。
第4篇包括第20~27章,主要介绍Java中的Swing编程,包括布局的设计、常用的控制项、树状列表的使用,以及对相关图像进行处理技术。
第5篇包括第28~30章,主要介绍Java中经常用到的一些高级技术套用。例如,网路编程的套用、输入/输出流的套用及JDBC资料库开发技术等。
读者对象
Java初学者
想全面、系统地学习Java的人员
Java技术爱好者
利用Java进行编程和开发的技术人员
大中专院校的学生
相关培训学校的学员
本书由桂颖、谷涛编写。其中东华理工大学的桂颖负责编写第1~19章,天津工业大学的谷涛负责编写第20~30章。