第1章 Java语言概述 1
1.1 Java语言及其产生 1
1.2 Java的特点 1
1.3 Java的体系结构 3
1.3.1 Java的体系结构 3
1.3.2 Java虚拟机 3
1.3.3 垃圾回收机制 3
1.3.4 代码安全检测 4
1.4 Java的3种版本 4
1.5 Java开发环境概述 4
1.5.1 JDK的安装、配置和使用 4
1.5.2 JDK工具箱 6
1.5.3 Eclipse开发环境的安装、配置和使用 6
1.5.4 Java程序的编写 7
1.6 本章小结 9
习题1 9
第2章 Java语言基础 11
2.1 Java语言要素 11
2.1.1 标识符 11
2.1.2 关键字 11
2.1.3 分隔符 12
2.1.4 注释 12
2.2 基本数据类型 13
2.2.1 简单类型 13
2.2.2 引用类型 14
2.2.3 常量 14
2.2.4 变量 15
2.3 运算符和表达式 16
2.3.1 算术运算符 16
2.3.2 关系运算符 17
2.3.3 逻辑运算符 17
2.3.4 位运算符 18
2.3.5 赋值运算符 19
2.3.6 其他运算符 20
2.3.7 运算符的优先级与结合性 21
2.3.8 表达式与语句 21
2.4 控制语句 22
2.4.1 选择结构控制语句 23
2.4.2 循环结构控制语句 25
2.4.3 转移语句 27
2.5 数组 29
2.5.1 一维数组 29
2.5.2 二维数组 31
2.5.3 多维数组 32
2.6 字符串 32
2.6.1 字符串类 33
2.6.2 常用方法 33
2.7 综合应用实例 34
2.8 本章小结 37
习题2 37
第3章 Java类和对象 39
3.1 面向对象基础 39
3.1.1 类 39
3.1.2 对象 40
3.1.3 消息 40
3.2 继承 40
3.2.1 创建子类 40
3.2.2 成员变量和方法 41
3.2.3 对象的构造和初始化过程 44
3.2.4 上转型对象 45
3.2.5 关键字this和super 47
3.2.6 对象的撤销和清理 49
3.3 多态 50
3.3.1 基本概念 50
3.3.2 方法重载 50
3.3.3 方法覆盖 51
3.3.4 变量覆盖 53
3.4 修饰符 53
3.4.1 访问修饰符 53
3.4.2 非访问修饰符 57
3.5 内部类和匿名内部类 59
3.5.1 内部类 59
3.5.2 匿名内部类 61
3.6 接口 63
3.6.1 接口的定义 63
3.6.2 接口与多重继承 63
3.6.3 接口的实现 64
3.6.4 接口中的变量和方法 64
3.7 包 66
3.7.1 包的作用 66
3.7.2 Java中定义的包 66
3.7.3 自定义包的创建和使用 66
3.7.4 编译和生成包 67
3.8 综合应用实例 68
3.9 本章小结 70
习题3 71
第4章 Java的I/O流和异常处理 73
4.1 I/O流概述 73
4.2 System I/O类和Scanner类 75
4.2.1 SystemI/O类 75
4.2.2 Scanner类 76
4.3 文件类 76
4.3.1 使用File类访问文件系统 76
4.3.2 随机文件读写 78
4.4 字节级输入输出流 79
4.4.1 数据输入输出流 79
4.4.2 文件输入输出流 80
4.4.3 缓冲输入输出流 81
4.4.4 管道输入输出流 81
4.4.5 格式化输出流 81
4.5 字符级输入输出类 82
4.5.1 字符输入输出类 82
4.5.2 缓冲读写类 83
4.5.3 文件读写类 86
4.5.4 格式化写类 88
4.6 对象序列化 89
4.6.1 对象输入流 89
4.6.2 对象输出流 90
4.7 异常处理 91
4.7.1 Java中定义的异常 91
4.7.2 异常类的层次结构 92
4.7.3 捕获异常 92
4.7.4 异常处理的嵌套 96
4.7.5 自定义的异常和使用 97
4.8 文件流综合应用实例 98
4.9 本章小结 106
习题4 106
第5章 Java用户界面类和Applet 108
5.1 AWT简介 108
5.2 AWT容器类 108
5.3 基本控件类 110
5.4 图形类 112
5.5 事件类型及其处理 112
5.5.1 事件类 113
5.5.2 事件监听器 113
5.5.3 事件处理流程 114
5.6 布局管理器 115
5.6.1 FlowLayout 115
5.6.2 BorderLayout 116
5.6.3 GridLayout 116
5.6.4 CardLayout 116
5.6.5 GridBagLayout 117
5.7 Swing简介 117
5.7.1 Swing组件的特点 118
5.7.2 Swing包中的类 118
5.7.3 Swing包中的控件类 118
5.8 Java Applet 122
5.8.1 Applet简介 122
5.8.2 Applet程序的编写 124
5.8.3 Applet程序的编译和执行 125
5.8.4 Applet的绘图和控制 126
5.9 GUI设计综合应用实例 128
5.10 本章小结 130
习题5 130
第6章 Java网络编程 132
6.1 Java网络基础 132
6.1.1 IP地址 132
6.1.2 端口 133
6.1.3 套接字 134
6.1.4 数据报 134
6.1.5 传输协议 135
6.2 基于URL的高层次Java网络编程 135
6.2.1 从URL中读取内容 135
6.2.2 建立URL连接并读取内容 136
6.3 基于Socket的网络编程 137
6.3.1 Socket通信过程 138
6.3.2 创建客户端Socket 139
6.3.3 创建服务器端Socket 139
6.3.4 打开输入输出流 139
6.3.5 关闭流和Socket 141
6.4 基于Datagram的网络编程 141
6.4.1 数据报和套接字 142
6.4.2 创建客户端Datagram 142
6.4.3 创建服务器端Datagram 142
6.4.4 打开输入输出流 143
6.4.5 关闭流和Datagram 143
6.5 网络编程与应用实例 144
6.6 本章小结 150
习题6 150
第7章 Java多线程编程 152
7.1 线程基础 152
7.1.1 线程概述 152
7.1.2 线程的状态 152
7.1.3 线程的优先级 153
7.2 线程的创建 153
7.2.1 通过继承Thread类创建 153
7.2.2 通过实现Runnable接口创建 155
7.3 多线程的创建 156
7.4 线程的调度 159
7.4.1 线程优先级的获取与设置 159
7.4.2 线程睡眠 159
7.4.3 线程让步 159
7.4.4 线程等待 160
7.4.5 线程唤醒 160
7.5 多线程的同步处理 161
7.5.1 多线程的互斥 161
7.5.2 synchronized方法 161
7.6 多线程综合应用实例 164
7.7 本章小结 168
习题7 168
第8章 数据库编程 170
8.1 数据库基础 170
8.1.1 关系数据库 170
8.1.2 SQL基本内容 171
8.1.3 ODBC技术 173
8.2 JDBC数据库连接技术 174
8.2.1 JDBC概述 174
8.2.2 JDBC的实现及其驱动程序 174
8.2.3 JDBC的常用类和接口 175
8.3 Java访问数据库的基本步骤 176
8.3.1 加载驱动程序类 176
8.3.2 建立JDBC连接 177
8.3.3 执行SQL语句 179
8.4 JDBC高级特性 180
8.4.1 预备语句 180
8.4.2 可滚动和可更新的结果集 180
8.4.3 元数据 182
8.4.4 事务 183
8.5 创建数据库 184
8.6 JDBC综合应用举例 185
8.7 本章小结 187
习题8 188
第9章 Servlet与JSP 189
9.1 Java EE Web开发技术 189
9.2 Servlet基础 190
9.2.1 Servlet定义 190
9.2.2 Servlet工作方式 191
9.2.3 Servlet API 192
9.2.4 Servlet异常 193
9.3 配置Servlet工作环境 193
9.3.1 Servlet开发环境 193
9.3.2 Servlet类的配置 194
9.3.3 编写简单的Servlet 195
9.4 JavaBean基础 196
9.4.1 JavaBean基本概念 196
9.4.2 JavaBean的属性、方法和事件 197
9.4.3 一个简单的JavaBean 197
9.5 JSP概述 198
9.5.1 JSP基本概念 198
9.5.2 JSP技术的特点 199
9.5.3 JSP的工作方式 199
9.5.4 JSP和Servlet的区别 200
9.6 编写简单的JSP 200
9.7 在JSP中访问数据库 200
9.8 JSP的设计模式 202
9.8.1 JavaBean与JSP的结合 202
9.8.2 Servlet与JSP的结合 203
9.9 JSP的语法要素 203
9.9.1 JSP脚本元素 203
9.9.2 JSP指令和动作元素 205
9.9.3 JSP内置对象 206
9.10 Web综合应用实例 209
9.11 本章小结 222
习题9 223
第10章 RMI和EJB 224
10.1 RMI基础 224
10.1.1 RMI概述 224
10.1.2 RMI的目标和体系结构 224
10.1.3 RMI的工作机制 225
10.1.4 用RMI设计应用系统 226
10.2 RMIAPI 227
10.3 Java RMI与其他分布式技术 228
10.4 RMI部署问题 229
10.5 编写一个RMI应用系统 229
10.6 EJB技术 233
10.6.1 EJB基本概念 233
10.6.2 EJB组件 234
10.6.3 EJB容器 235
10.6.4 开发和部署EJB 236
10.6.5 EJB和其他分布式技术 237
10.6.6 基于EJB的Web应用程序实例 238
10.7 本章小结 244
习题10 245
附录A Java运算符及其优先级 246
附录B Java类路径和类加载器 247
参考文献 249