第1章 什么是Java程序设计语言 1
1.1 Java语言诞生背景 1
1.2 Java语言的特点 1
1.2.1 可移植性(universality) 1
1.2.2 安全性(security) 1
目录 1
1.2.6 垃圾回收机制(garbage collection) 2
1.3 安装Java程序开发工具(JDK1.5) 2
7.2 值传递调用 1 2
1.2.5 线程(thread) 2
1.2.3 Java Virtual Machine(JVM) 2
1.2.4 面向对象的程序设计语言 2
1.3.1 安装JAVA2 Standard Edition 1.5.0 3
1.3.2 安装开发文档及最终完成 5
1.3.3 Java开发工具 6
1.4 Java程序开发过程 7
1.5 运行第一个Java程序 7
1.6 巩固练习 8
第2章 理解对象与类 9
2.1 什么是对象 9
2.2 什么是类 9
2.3 HelloJava示例的分析 11
2.4 巩固练习 12
3.2 注释 13
3.1 代码编写规则 13
第3章 Java语言的基本语法 13
3.3 标识符 14
3.4 变量和常量 15
3.5 数据类型 16
3.5.1 基本数据类型 16
3.5.2 对象类型 21
3.6 类型转换 21
3.6.1 自动类型转换 22
3.6.2 强制类型转换 24
3.6.3 String型对象与基本数据类型间的运算 25
3.7 运算符 25
3.7.1 逻辑非(!) 26
3.7.2 位非运算符(~) 26
3.7.3 符号运算符(+、-) 27
3.7.4 增减运算符(++、--) 27
3.7.5 算术运算符(+、-、*、/) 29
3.7.6 位移(shift)运算符(<<、>>、>>>) 29
3.7.7 关系运算符(>、<、>=、<=、==、!=) 31
3.7.8 快速逻辑与(&&)和快速逻辑或(‖) 32
3.7.9 位运算符:位与(&)、位或(|)、位异或(^) 34
3.7.10 三目运算符(?:) 35
3.7.11 赋值运算符 36
3.7.12 对象运算符(instanceof) 37
3.8 巩固练习 37
第4章 程序流程控制语句 39
4.1 if语句 39
4.1.1 if语句格式1 39
4.1.2 if语句格式2 40
4.1.3 if语句格式3 41
4.2 switch语句 44
4.3 for语句 46
4.3.1 break语句 49
4.3.2 continue语句 49
4.3.3 多重for循环语句 50
4.3.4 多重for循环语句中的break与continue 52
4.4 while语句 55
4.5 do-while语句 57
4.6 巩固练习 57
5.1 类的定义与对象的创建 59
第5章 类与对象 59
5.2 引用赋值 61
5.3 成员方法 62
5.3.1 void返回类型 64
5.3.2 无参方法 65
5.3.3 多参方法 65
5.4 局部变量和成员变量 67
5.5 this引用 68
5.6 静态变量与静态方法 70
5.7 成员与静态方法的关系 71
5.8 包与导入 72
5.9 访问控制符 74
5.10 重载 77
5.11 构造函数 79
5.12 类的初始化 83
5.12.2 实例块 84
5.12.1 静态块 84
5.13 巩固练习 85
第6章 数组 86
6.1 基本数据类型数组 86
6.2 一维数组的初始化 88
6.3 对象数组 88
6.4 二维数组 91
6.5 三维数组 95
6.6 巩固练习 97
第7章 对象与方法 99
7.1 对象的创建与销毁 99
7.3 引用传递调用 103
7.4 获取命令行参数 105
7.5 返回对象引用 106
7.6 返回新对象 107
7.7 自引用 108
7.8 递归调用 111
7.9 巩固练习 114
8.1 继承的概念 117
第8章 继承 117
8.2 子类对象的创建 118
8.3 this与super 119
8.4 继承中的访问控制符 123
8.5 覆盖 124
8.6 多态 126
8.7 引用的范围 127
8.8 引用变量的类型转换 128
8.9 Object类 129
8.10 “==”与equals() 130
8.11 Object型引用变量 132
8.12 类的层级图 134
8.13 巩固练习 135
第9章 抽象类与接口 136
9.1 抽象类 136
9.2 final关键字 138
9.3 接口 139
9.4 Cloneable接口 143
9.5 Enumeration接口 144
9.6 巩固练习 145
10.1 静态类(static class) 146
第10章 内隐类(inner class) 146
10.2 成员类(member class) 147
10.3 局部类(local class) 150
10.4 匿名类(anonymous class) 152
10.5 固练习 153
第11章 异常处理(exception handing) 154
11.1 try-catch语句 154
11.2 Exception类的种类 157
11.3 可抛出异常的方法 158
11.4 自定义异常 161
11.5 巩固练习 162
第12章 常用API之一 164
12.1 java.6ang.String 164
12.2 java.lang.StringBuffer 167
12.3 wrapper class 169
12.4 java.lang.Math类 172
12.5 java.Math.BigInteger类 174
12.6 java.Math.BigDecimal类 176
12.7 巩固练习 177
13.1 File类 179
第13章 Java输入与输出(I/O) 179
13.2 流(stream) 182
13.2.1 InputStream与OutputStream 183
13.2.2 FileInputStream类与FileOutputStream类 184
13.3 filter stream 186
13.4 字符流(character streams) 190
13.4.1 InputStreamReader、OutputStreamWriter 191
13.4.2 BufieredReader与BufferedWriter 191
13.4.4 从System.in获取数据 193
13.4.3 FileReader与FileWriter 193
13.4.5 PrintStream与PrintWriter 195
13.5 RandomAccessFile类 196
13.6 对象序列化(object serialization) 199
13.6.1 ObjectInput与ObjectOutput 199
13.6.2 ObjectOutputStream 200
13.6.3 ObjectInputStream 200
13.7 巩固练习 201
第14章 线程 203
14.1 Runtime类与Process类 203
14.2 创建线程 205
14.3 多线程 208
14.4 线程的优先级 210
14.5 线程的休眠与唤醒 211
14.6 线程让步 213
14.7 线程同步 214
14.7.1 同步块 216
14.7.2 同步化方法 219
14.7.3 生产者与消费者 221
14.7.4 多消费者 224
14.8 stop()、suspend()和resume() 225
14.9 巩固练习 226
第15章 常用API之二 228
15.1 Collection接口 228
15.1.1 Set接口 228
15.1.2 List接口 230
15.1.3 Map接口 232
15.2 java.util.Random类 234
15.3 java.util.Arrays类 236
15.4 java.util.StringTokenizer类 238
15.5 java.util.Calendar类 240
15.6 巩固练习 242
第16章 AWT程序设计 244
16.1 java.awt.Component类 244
16.2 java.awt.Container类 247
16.3 布局管理器 248
16.3.1 BorderLayout类 248
16.3.2 FlowLayout类 249
16.3.3 GridLayout类 252
16.4 组件(Components) 253
16.4.1 标签(Label) 253
16.4.2 按钮(Button) 254
16.4.3 单行文本框(TextField) 255
16.4.4 多行文本框(TextArea) 256
16.4.5 列表框(List) 258
16.4.6 下拉列表框(Choice) 259
16.4.7 复选框(CheckBox) 260
16.4.8 滚动条(Scollbar) 262
16.4.9 画布(Canvas) 264
16.5 容器(Container) 265
16.5.1 对话框(Dialog) 265
16.5.2 文件对话框(FileDialog) 266
16.5.3 滚动面板(ScrollPane) 269
16.6 菜单(Menu)组件 272
16.7 巩固练习 276
第17章 AWT事件处理 278
17.1 委托事件模型 278
17.2 动作事件(ActionEvent)及其处理 279
17.3 窗口事件(WindowEvent)及其处理 281
17.4 适配器类(Adapter) 285
17.5 文本事件(TextEvent)及其处理 286
17.7 键盘事件(KeyEvent)及其处理 287
17.6 输入事件(InputEvent)抽象类 287
17.8 鼠标事件(MouseEvent)及其处理 291
17.9 项目事件(ItemEven)及其处理 293
17.10 AdjustmentEvent事件及其处理 295
17.11 焦点事件(FocusEvent)及其处理 296
17.12 多事件处理 297
17.13 编制记事本程序 298
17.13.1 记事本程序的构成 298
17.13.2 MyMenuBar类 299
17.13.3 定义MyFile类 301
17.13.4 定义MyClipboard类 302
17.13.5 定义MyFindDialog类 304
17.14 记事本程序全部代码 307
17.15 巩固练习 312
第18章 Java2D图形 313
18.1 在组件上作图 313
18.2 绘制图形 314
18.3 绘制图像 317
18.3.2 Image类 318
18.3.1 Graphics类 318
18.3.3 URL类 319
18.3.4 Toolkit类 320
18.3.5 MediaTracker类 321
18.4 Graphics2D类 323
18.5 几何图形 323
18.5.1 Line2D类 324
18.5.2 Rectangle2D类 324
18.5.3 Ellipse2D类 325
18.5.4 GeneralPath类 326
18.6.1 Stroke属性 327
18.6 渲染属性 327
18.6.2 Paint属性 329
18.6.3 Composite属性 332
18.6.4 Transform属性 333
18.6.5 Clip属性 337
18.7 双缓冲 338
18.8 巩固练习 340
19.1 制作Applet 342
第19章 Applet 342
19.2 Applet的生命周期 344
19.3 Applet的多媒体处理 346
19.3.1 图像处理 346
19.3.2 声音处理 347
19.4 Applet参数 348
19.5 使用浏览器控制Applet 350
19.6 使用Applet控制浏览器 351
19.7 控制其他Applet 353
19.8 Applet与安全 355
19.9.1 物体的垂直上抛运动 356
19.9 制作教育用Applet 356
19.9.2 绘制不同形状三角形的Applet 359
19.10 巩固练习 361
第20章 制作Applet游戏 362
20.1 拼图游戏 362
20.1.1 理解游戏 362
20.1.2 PPuzzle类 365
20.1.3 全部代码 366
20.2 赛车游戏 369
20.2.1 理解游戏 369
20.2.2 Car类 370
20.2.3 CarRace类 371
20.2.4 全部代码 372
20.3 战舰与潜艇战斗游戏 376
20.3.1 理解游戏 377
20.3.2 WaterObject类 377
20.3.3 WaterBomb类 378
20.3.4 WaterUnit类 379
20.3.5 WarShip类 380
20.3.6 Submarine类 381
20.3.7 WaterWar类 381
20.3.8 全部代码 383
20.4 巩固练习 389
第21章 网络程序设计 390
21.1 网络程序设计基础 390
21.1.1 TCP与UDP 390
21.1.2 端口与套接字 390
21.2 TCP程序设计基础 391
2 1.2.1 InetAddress类 392
2 1.2.2 ServerSocket类 393
2 1.2.3 Socket类 394
21.3 单向通信 396
21.3.1 接收字符串的服务器 397
21.3.2 发送字符串的客户机 398
21.4 双向通信 399
21.4.1 传送文件的服务器 400
21.4.2 接收文件的客户机 401
21.4.3 多客户通信 403
21.4.4 剪子-包袱-锤游戏的服务器端 403
21.4.5 剪子-包袱-锤游戏的客户端 405
21.5 客户机相互通信 407
21.5.1 聊天程序服务器端 408
21.5.2 聊天程序客户端 411
21.5.3 操作URL 412
21.6 Applet Socket通信 415
21.7 巩固练习 416
第22章 制作网络游戏 417
22.1 网络五子棋游戏 417
22.1.1 创建通信协议 418
22.1.2 网络五子棋游戏服务器端 419
22.1.3 网络五子棋游戏客户端 424
22.2 巩固练习 434
附录A “独立完成”部分提示 435
附录B JCreator的安装及其使用方法 441
B.1 安装JCreator 441
B.2 JCreator使用方法 443
附录C Swing程序设计简介 445
C.1 Swing组件 445
C.2 Swing组件的事件处理 447
附录D JDBC程序设计简介 449
D.1 注册数据源 449
D.2 测试JDBC 450