图书简介:
目 录
第1章 Java语言概述 1
1.1 Java语言的诞生 1
1.2 学习Java的必要性 2
1.3 Java的特点 3
1.4 Java与C/C++之关系 5
1.5 Java运行平台 5
1.6 Java程序开发 7
1.7 JDK 1.6编译器的兼容性 10
问答题 10
作业题 10
第2章 基本数据类型和数组 11
2.1 标识符和关键字 11
2.2 基本数据类型 12
2.3 基本数据类型的转换 14
2.4 数据的输入和输出 15
2.5 数组 17
问答题 19
作业题 20
第3章 运算符、表达式和语句 21
3.1 算术运算符和算术表达式 21
3.2 关系运算符和关系表达式 22
3.3 逻辑运算符和逻辑表达式 23
3.4 赋值运算符和赋值表达式 23
3.5 移位运算符 23
3.6 位运算符 25
3.7 条件运算符 26
3.8 instanceof运算符 26
3.9 一般表达式 26
3.10 语句概述 26
3.11 分支语句 27
3.12 循环语句 30
3.13 跳转语句 32
问答题 33
作业题 35
第4章 类和对象 36
4.1 面向对象编程 36
4.2 类声明和类体 39
4.3 类体的构成 40
4.4 构造方法与对象的创建 41
4.5 对象的引用与实体 45
4.6 成员变量 46
4.7 方法 48
4.8 方法重载 53
4.9 关键字this 54
4.10 包 55
4.11 import语句 57
4.12 访问权限 60
4.13 对象的组合 64
4.14 基本类型数据的类包装 67
4.15 对象数组 68
4.16 反编译和文档生成器 69
4.17 jar文件 69
问答题 71
作业题 72
第5章 继承、接口和泛型 73
5.1 子类与父类 73
5.2 子类的继承性 74
5.3 子类对象的构造过程 75
5.4 成员变量隐藏和方法重写 76
5.5 关键字super 79
5.6 final类与final方法 82
5.7 对象的上转型对象 82
5.8 继承与多态 84
5.9 abstract类 85
5.10 面向抽象 85
5.11 接口 88
5.12 接口回调 90
5.13 面向接口 92
5.14 抽象类与接口的比较 94
5.15 内部类 94
5.16 匿名类 95
5.17 异常类 97
5.18 泛型类 98
问答题 102
作业题 104
第6章 字符串和正则表达式 105
6.1 String类 105
6.2 StringBuffer类 111
6.3 StringTokenizer类 113
6.4 正则表达式及字符串的替换与分解 114
6.5 Scanner类 116
6.6 模式匹配 118
问答题 121
作业题 122
第7章 常用实用类 123
7.1 Date类 123
7.2 Calendar类 125
7.3 Math类与BigInteger类 126
7.4 数字格式化 129
7.5 LinkedList<E>泛型类 132
7.6 HashSet<E>泛型类 136
7.7 HashMap<K,V>泛型类 139
7.8 TreeSet<E>泛型类 140
7.9 TreeMap<K, V>泛型类 142
7.10 Stack<E>泛型类 143
问答题 144
作业题 145
第8章 线程 146
8.1 Java中的线程 147
8.2 线程的生命周期 147
8.3 线程的优先级与调度管理 151
8.4 Thread的子类创建线程 152
8.5 Runable接口 153
8.6 线程的常用方法 158
8.7 线程同步 161
8.8 使用wait()、notify()和notifyAll()协调同步线程 162
8.9 挂起、恢复和终止线程 164
8.10 线程联合 167
8.11 守护线程 167
问答题 168
作业题 169
第9章 输入流和输出流 170
9.1 文件 171
9.2 文件字节流 173
9.3 文件字符流 175
9.4 缓冲流 177
9.5 数组流 179
9.6 字符串流 181
9.7 数据流 181
9.8 对象流 183
9.9 序列化和对象克隆 184
9.10 随机读写流 185
9.11 使用Scanner解析文件 188
9.12 文件锁 191
问答题 192
作业题 192
第10章 图形用户界面设计 194
10.1 AWT组件与SWING组件概述 194
10.2 JFrame窗体 195
10.3 菜单组件 197
10.4 布局设计 198
10.5 中间容器 203
10.6 文本组件 205
10.7 按钮与标签组件 212
10.8 复选框与单选按钮组件 214
10.9 列表组件 215
10.10 表格组件 217
10.11 树组件 219
10.12 进度条组件 221
10.13 组件常用方法 224
10.14 窗口事件 227
10.15 鼠标事件 228
10.16 焦点事件 233
10.17 键盘事件 233
10.18 AWT线程 236
10.19 计时器 238
10.20 MVC设计模式 239
10.21 播放音频 241
10.22 按钮绑定到键盘 243
10.23 对话框 245
10.24 多文档界面 251
10.25 发布应用程序 254
问答题 255
作业题 255
第11章 Java中的网络编程 256
11.1 URL类 257
11.2 读取URL中的资源 257
11.3 显示URL资源中的HTML文件 259
11.4 处理超链接 261
11.5 InetAddress类 262
11.6 套接字Socket 263
11.7 使用多线程处理套接字连接 266
11.8 UDP数据报 270
11.9 广播数据报 273
11.10 Java远程调用 276
问答题 280
作业题 280
第12章 Java数据库操作 281
12.1 JDBC简介 281
12.2 Microsoft Access数据库 282
12.3 JDBC-ODBC桥接器 283
12.4 查询操作 285
12.5 更新、插入与删除操作 289
12.6 用结果集更新数据库中的表 290
12.7 CachedRowSetImpl类 292
12.8 预处理语句 294
12.9 事务 296
12.10 批处理 298
12.11 使用JTable组件操作表 298
12.12 SQL Server 2000数据库 303
12.13 使用纯Java数据库驱动程序 304
问答题 306
作业题 306
第13章 Java Applet 308
13.1 Java Applet的运行原理 308
13.2 在Java Applet中播放声音 311
13.3 在网页向Java Applet传值 312
13.4 在Java Applet中使用组件 312
13.5 在Java Applet中绘制图形 317
13.6 在Java Applet中绘制图像 318
13.7 在Java Applet中播放幻灯片 320
13.8 Java Applet网络聊天室 320
问答题 324
作业题 324
展开
第4版前言
本书全面地讲解了Java的基础内容和编程方法,在内容的深度和广度方面都给予了仔细考虑,在类、对象、继承、接口等重要的基础知识上侧重深度,而在实用类的讲解上侧重广度。本书继续保留第3版的特点——注重教材的可读性和实用性。特别将第12章关于数据库的讲解更改为Derby数据库。通过本书的学习,读者可以掌握Java面向对象编程的思想和Java在网络编程中的一些重要技术。
全书共13章。第1章主要介绍Java产生的背景和Java 平台,读者可以了解到Java是怎样做到“一次写成,处处运行”的。第2、3章主要介绍Java的基本数据类型、运算符和控制语句。第4、5章是本书的重点内容之一,讲述类、对象、继承、接口以及Java语言新增的泛型等重要知识,特别讲述面向抽象的程序设计思想。第6章讲述常用的字符串和相关的模式匹配的知识,模式匹配问题是很多信息技术经常需要处理的问题之一,重点讲解使用Scanner类解析字符串的实用技术。第7章讲述常用的实用类,包括处理日期、数学计算、数字格式化以及数据结构等实用类。第8章讲述多线程技术,也是很难讲解的一部分内容,通过许多有启发的例子来帮助读者理解多线程编程。第9章讲解Java中的输入/输出流技术,特别介绍怎样使用输入/输出流来克隆对象以及Java的文件锁技术。第10章是基于SWING的GUI设计,讲解常用的组件和容器,对于比较复杂的组件都给出了实用的例子。第11章讲解Java在网络编程中的一些重要技术,涉及URL、Socket、InetAddrees、DatagramPacket、BroadCast以及Java远程调用等重要的网络编程技术。第12章主要讲解Java怎样操作数据库,讲解了预处理、事务处理、批处理等重要技术。第13章主要讲解Java Applet的运行原理以及在网络中的角色。
本书的例题全部在JDK 1.6环境下编译通过。每章都有问答题和作业题,通过回答问题可以使读者加深知识的理解。理解该章内容后,读者完全有能力独立地完成作业题。
本书配有配套的电子课件,请教师登录到华信教育资源网站http://www.hxedu.com.cn下载(如果是第一次登录该网站,请先注册)。
本书配有上机实验指导,除了按照主教材的章节配备实验指导外,还配备一个综合实验。每章的实验指导由实验内容和知识扩展两部分内容,学生可按照实验的要求上机编写程序,每个实验都提供了程序模板,学生完成实验后需填写实验报告。知识扩展是对实验内容的一个补充,结合实例讲解主教材未能涉及的一些知识或已学知识的深入讨论。综合实验的目的是为了综合运用所学知识设计一个完整的软件。
作 者
展开