第1章 安装和配置Java开发环境 1
1.1 获取JDK 1
1.2 安装JDK 2
1.3 配置JDK 5
1.3.1 Windows95/98配置 5
1.3.2 Windows2000/XP配置 6
1.3.3 Solaris配置 6
1.4 JDK开发工具 7
1.4.1 AppletViewer 7
1.4.2 javac和java 8
1.4.3 javadoc&I 11
1.4.4 jdb 12
1.5 小结 13
1.6 习题 13
第2章 类、接口和包 16
2.1 面向对象编程基础 16
2.1.1 面向过程编程 16
2.1.2 面向对象编程 18
2.1.3 一切皆对象:猫和老鼠 21
2.1.4 类:状态和行为 23
2.1.5 接口:通信员 24
2.1.6 继承性 26
2.2 Java中的类 28
2.2.1 类的一般形式 28
2.2.2 类的声明 29
2.2.3 变量访问控制 32
2.2.4 构造函数 34
2.2.5 this与super 38
2.3 包 40
2.4 小结 42
2.5 习题 43
第3章 数据对象 47
3.1 数组 47
3.1.1 初始化数组 47
3.1.2 多维数组 49
3.2 矢量类型 54
3.3 枚举器 60
3.4 哈希表 62
3.5 泛型类型 67
3.6 小结 70
3.7 习题 70
第4章 抽象窗口工具包 73
4.1 抽象窗口工具包综述 73
4.1.1 类的分级 73
4.1.2 处理事件的方法 74
4.1.3 容器与布局管理器 81
4.2 图形、字体和颜色 82
4.2.1 图形的绘制 82
4.2.2 字体的创建及使用 84
4.2.3 颜色也是类 85
4.2.4 图像的处理 87
4.3 小部件 88
4.3.1 按钮(Buon) 88
4.3.2 检查盒(Checkbox) 92
4.3.3 选项菜单(Choice) 95
4.3.4 滚动列表(List) 97
4.3.5 滚动条(Scrollbar) 99
4.3.6 标签(Label) 101
4.3.7 文本字段(TextField) 101
4.3.8 文本域(TextArea) 101
4.4 容器 102
4.4.1 框架(Frame) 102
4.4.2 面板(panel) 102
4.5 布局管理器 102
4.5.1 流控制(FlowLayout) 103
4.5.2 栅格控制(GridLayout) 103
4.5.3 栅格包控制(GridBagLayout) 103
4.5.4 边界控制(BorderLayout) 106
4.5.5 卡片控制(CardLayout) 107
4.6 小结 109
4.7 练习 109
第5章 Java异常处理范例 111
5.1 处理异常 111
5.1.1 异常分类 111
5.1.2 触发异常 113
5.1.3 创建违例类 115
5.1.4 finally从句 116
5.2 使用违例的建议 118
5.3 小结 119
5.4 习题 119
第6章 Java图形开发范例 121
6.1 SWING图形 121
6.1.1 SWING容器 121
6.1.2 文字输入 125
6.1.3 单选与多选 128
6.1.4 滚动条 131
6.1.5 菜单 132
6.1.6 对话框 136
6.2 事件控制 144
6.2.1 窗口事件 144
6.2.2 键盘事件 146
6.2.3 鼠标事件 148
6.3 小结 151
6.4 习题 152
第7章 Java多线程范例 154
7.1 线程的基本概念 154
7.1.1 生活中的线程 154
7.1.2 一个例子 155
7.2 线程的生命周期 156
7.2.1 创建(Newbo)阶段 156
7.2.2 准备运行(Runnable)阶段 156
7.2.3 运行(Running)阶段 156
7.2.4 阻塞(Blocked)阶段 157
7.2.5 死亡(Dead)阶段 157
7.3 多线程实现机制 157
7.3.1 线程构造函数:创造的力量 157
7.3.2 Thread的方法 158
7.3.3 实现Runnable接口 159
7.4 线程基本控制 160
7.4.1 终止一个线程 160
7.4.2 测试一个线程 161
7.4.3 线程的阻塞 161
7.5 线程组 162
7.6 优先级和线程调度 164
7.7 线程同步和锁 166
7.8 线程在动画中的应用 168
7.9 小结 170
7.10 习题 170
第8章 J2EE开发范例 173
8.1 J2EE简介 173
8.1.1 J2EE组件和层次 173
8.1.2 EJB角色 175
8.2 会话EJB 176
8.2.1 无状态的会话EJB 177
8.2.2 有状态的会话EJB 186
8.3 实体EJB 195
8.3.1 容器管理的实体EJB 196
8.3.2 JavaBean自管理的实体EJB 213
8.4 小结 228
8.5 习题 229
第9章 Java网络开发范例 231
9.1 预备知识 231
9.1.1 IP地址 231
9.1.2 协议 232
9.1.3 端口号 234
9.1.4 基本URL 235
9.1.5 客户/服务器模式 235
9.2 套接字(Socket) 236
9.2.1 Socket工作步骤 236
9.2.2 当前时间 238
9.2.3 数据报通信 241
9.3 连接服务器 244
9.4 实现服务器 246
9.5 发送E-mail 251
9.6 URL链接 253
9.7 小结 254
9.8 习题 255
第10章 Java的I/O操作范例 257
10.1 Java流理论 257
10.1.1 输入流之InputStream类 258
10.1.2 输出流之OutputStream类 258
10.2 基本I/O流 259
10.2.1 标准系统数据流 259
10.2.2 数据流 260
10.2.3 文件I/O的有用工具 261
10.2.4 其他I/O 266
10.3 zip文件流 267
10.4 缓存I/O流 269
10.5 小结 271
10.6 习题 272
第11章 Java数据库操作范例 274
11.1 JDBC简介 274
11.1.1 JDBC驱动 275
11.1.2 JDBC驱动简单实例 276
11.2 基本JDBC编程 277
11.2.1 数据库连接串 277
11.2.2 加载驱动并创立连接 277
11.2.3 执行SQL语句 279
11.2.4 结果集(ResultSet) 281
11.3 元数据 283
11.3.1 数据库元数据 283
11.3.2 ResultSet 元数据 284
11.4 可滚动结果集 286
11.5 事务处理 290
11.6 小结 292
11.7 习题 292
第12章 使用Applet 295
12.1 把Applet嵌入网页 295
12.1.1 Applet方法及其生命周期 296
12.1.2 一个简单的Applet 297
12.1.3 编写HTML代码 298
12.2 用AppletViewer查看Applet 298
12.3 与普通程序的比较 298
12.4 小应用程序属性 299
12.5 从HTML向Applet传递应用实例 299
12.6 使用Applet访问数据库 302
12.7 小结 304
12.8 习题 304
第13章 设计模型及Struts开发 306
13.1 什么是框架 306
13.2 MVC介绍 306
13.3 Struts 1.x介绍 307
13.3.1 Struts的由来 307
13.3.2 Struts工作原理 308
13.3.3 Struts的基本组件包 308
13.3.4 Stts框架的组成 309
13.4 Struts开发实例1 311
13.4.1 创建web.xml文件 312
13.4.2 创建struts-config.xml 313
13.4.3 编写index.jsp 313
13.4.4 国际化 314
13.4.5 运行实例 315
13.5 Struts开发表单提交实例 315
13.5.1 创建web.xml文件 316
13.5.2 创建struts-config.xml 316
13.5.3 编写sendMessage.jsp 317
13.5.4 编写showMessage.jsp 318
13.5.5 编写ActionBean类 319
13.5.6 编写FormBean类 319
13.5.7 国际化 321
13.5.8 运行实例 321
13.6 使用Struts的优势和不足 322
13.6.1 Struts的优点 322
13.6.2 Struts的缺点 322
13.7 小结 323
13.8 习题 323
附录A 发布EJB到WebLogic Server 325
A.1 进入控制中心 325
A.2 发布EJB 325
习题答案 327
第1章 答案 327
第2章 答案 327
第3章 答案 328
第4章 答案 328
第5章 答案 329
第6章 答案 329
第7章 答案 329
第8章 答案 330
第9章 答案 330
第10章 答案 331
第11章 答案 331
第12章 答案 332
第13章 答案 333