第1章Java语言概述 1
1.1面向对象程序设计 1
1.1.1面向对象程序设计思想的诞生 1
1.1.2面向对象与面向过程的对比 2
1.1.3面向对象技术的背景和特点 5
1.2 Java概述 5
1.2.1 Java的起源和发展 6
1.2.2 Java特点 6
1.2.3 Java 7的新特性 7
1.2.4 Java体系结构 7
1.3 Java运行机制与JVM 8
1.3.1 JVM的体系结构 8
1.3.2 JVM的运行机制 9
1.4 Java类库 10
1.5安装Java开发工具 11
1.5.1下载JDK 12
1.5.2安装JDK 13
1.5.3设置Java运行环境 14
1.6使用命令行 15
1.7使用集成开发环境 17
1.7.1使用JCreator 17
1.7.2使用Eclipse 19
1.8第一个Java程序:整数相加 23
1.8.1开发源代码 23
1.8.2编译运行 24
小结 24
习题 24
上机指导 25
实验一 编译Java程序 25
第2章Java语言基础 26
2.1数据类型 26
2.1.1整型 26
2.1.2浮点型 27
2.1.3 char型 28
2.1.4 boolean型 28
2.1.5基本数据类型值间的转换 29
2.2变量 30
2.2.1变量声明 30
2.2.2变量名和变量类型 30
2.2.3变量的初始化 31
2.2.4 final变量 31
2.3运算符 31
2.3.1算术运算符 32
2.3.2关系和逻辑运算符 34
2.3.3位运算符 34
2.3.4赋值运算符 35
2.3.5其他运算符 36
2.4表达式和语句 37
2.4.1表达式 37
2.4.2语句 38
2.5控制结构 38
2.5.1条件语句 39
2.5.2循环语句 41
2.5.3跳转语句 43
2.6字符串 44
2.6.1 String类型 45
2.6.2 String Buffer类型 48
2.7数组 50
2.7.1数组的声明与创建 50
2.7.2数组的初始化 51
2.7.3数组的常用操作 54
2.8命名规范 56
2.8.1标识符命名规则 56
2.8.2 Java中提倡的命名习惯 57
2.9注释 57
2.9.1单行注释 58
2.9.2区域注释 58
2.9.3文档注释 58
2.9.4程序注解 59
小结 64
习题 64
上机指导 64
实验一 基本数据类型的定义及转换 65
实验二 使用程序控制结构 65
实验三 String的使用 66
实验四 数组的使用 66
第3章 类与对象 67
3.1面向对象程序设计概述 67
3.1.1面向对象术语 67
3.1.2面向对象程序设计方法的优点 68
3.2面向对象与UML建模 69
3.2.1为什么需要建模 69
3.2.2 UML建模语言 69
3.2.3 UML的面向对象分析设计 70
3.3 Java语言与面向对象特性 71
3.4类的定义和对象的创建 72
3.4.1类的基本结构 72
3.4.2类之间的关系 72
3.4.3构造函数 74
3.4.4类成员 77
3.4.5对象的创建 80
3.5方法 80
3.5.1方法的定义 80
3.5.2方法的重载 81
3.5.3递归 86
3.6静态成员 87
3.6.1静态方法和静态变量 88
3.6.2静态变量和常量 88
3.6.3静态成员的访问 90
3.6.4 main()方法 92
3.6.5 Factory方法 93
3.7包 95
3.7.1包的定义 96
3.7.2类的导入 97
3.7.3静态导入 99
3.8成员的访问控制 100
3.8.1公共类型:public 100
3.8.2私有类型:private 101
3.8.3默认类型:default 101
3.8.4保护类型:protected 102
3.9封装 103
3.10利用系统已有的类 105
3.10.1 Date类 105
3.10.2 GregorianCalendar类 108
小结 110
习题 110
上机指导 111
实验一 类的定义 111
实验二 成员变量的使用 111
实验三 编写更复杂的类 112
实验四 静态成员的创建 112
第4章 继承与多态 114
4.1继承概述 114
4.1.1超类、子类 114
4.1.2继承层次 114
4.2 Java中的继承 115
4.2.1派生子类 115
4.2.2继承规则 116
4.2.3方法的继承与覆盖 119
4.2.4 this与super 121
4.3强制类型转换 124
4.4动态绑定 127
4.5终止继承:Final类和Final方法 128
4.5.1 Final类 128
4.5.2 Final方法 129
4.6抽象类 130
4.6.1抽象类 130
4.6.2抽象的方法 131
4.7多态 134
4.8所有类的超类:Object类 135
小结 139
习题 139
上机指导 140
实验一 抽象类的定义及调用 140
实验二 使用多态 140
实验三 使用Object类 141
实验四 构造函数的继承 141
实验五 对象引用的多态 142
第5章 接口与内部类 145
5.1接口的特性 145
5.2接口的定义 146
5.3接口的使用 147
5.3.1接口实现的基本语法 147
5.3.2接口中方法的实现与使用 147
5.4接口与抽象类 149
5.5接口与回调 151
5.6内部类 152
5.6.1内部类概述 152
5.6.2内部类语法规则 153
5.6.3局部内部类 156
5.6.4匿名内部类 158
5.6.5静态内部类 160
5.6.6关于内部类的讨论 161
小结 162
习题 162
上机指导 162
实验一 接口的创建 163
实验二 内部类的创建 163
实验三 创建多个接口 163
实验四 接口和继承的混合使用 164
第6章 输入/输出和异常处理 166
6.1 I/O流 166
6.1.1流的层次 166
6.1.2输入流和输出流 167
6.1.3字节流和字符流 170
6.1.4随机存取文件流 173
6.2.1/O流的使用 174
6.2.1标准的1/O流 174
6.2.2基本的1/O流 180
6.2.3过滤流 182
6.2.4文件随机读写 183
6.2.5流的分割 185
6.3对象的序列化 185
6.3.1存储对象 185
6.3.2对象的序列化 186
6.3.3对象序列化中的一些问题 187
6.4文件管理 188
6.4.1 File类简介 188
6.4.2使用File类 189
6.5异常处理 191
6.5.1异常处理概述 191
6.5.2异常的层次结构 198
6.5.3自定义异常 201
小结 204
习题 205
上机指导 205
实验一I/O流的使用 205
实验二 使用异常处理 205
实验三 处理流的使用 206
实验四 自定义异常处理 207
第7章 图形用户界面的实现 209
7.1图形用户界面概述 209
7.2 Swing与AWT 210
7.2.1 Swing与AWT之间的关系 210
7.2.2关于Swing与AWT控件的混用 210
7.3事件处理 212
7.3.1事件的层次结构 213
7.3.2窗体事件 214
7.3.3鼠标事件 214
7.3.4事件适配器 216
7.4创建图形用户界面 216
7.4.1窗体 216
7.4.2面板 218
7.4.3标签 219
7.4.4按钮 221
7.5布局管理 223
7.5.1流布局 223
7.5.2网格布局 225
7.5.3卡片布局 226
7.6选择控件 229
7.6.1控件概述 229
7.6.2文本框 230
7.6.3文本区 233
7.6.4单选按钮、复选框 235
7.7菜单和工具栏 239
7.7.1菜单 239
7.7.2工具栏 243
7.8对话框 244
7.9图形文本绘制 248
7.9.1画布 248
7.9.2画笔 249
7.9.3文本 251
7.9.4字体 252
7.10图像处理 254
7.11综合示例:围棋程序 257
小结 267
习题 267
上机指导 268
实验一 使用按钮 268
实验二 使用Graphics类绘图 268
实验三 用户注册界面 269
实验四 编写计算器程序 271
第8章Applet应用程序 274
8.1 Applet基础 274
8.1.1查看Applet 274
8.1.2 Applet与浏览器 275
8.1.3显示Applet 276
8.1.4 Applet生命周期 276
8.2 Applet类API 277
8.3 Applet的HTML标记和属性 278
8.3.1定位属性 279
8.3.2编码属性 279
8.4创建Applet 280
8.4.1简单Applet 280
8.4.2向Applet传递参数 282
8.5 Applet与Application 284
8.6 Applet弹出窗口 286
8.7 Applet安全 287
8.7.1 Applet安全控制 287
8.7.2 Applet沙箱 288
8.8实例研究:显示动画 289
8.8.1动画原理及重新绘制 289
8.8.2 Timer类简介 290
小结 292
习题 292
上机指导 292
实验一 创建Applet 292
实验二在Applet中显示图像界面 293
实验三 显示Applet传递的参数 293
第9章 网络通信 294
9.1网络通信概述 294
9.1.1 TCP/IP UDP 294
9.1.2 Socket套接字 295
9.2 Java网络通信机制 296
9.3 URL通信 297
9.3.1 URL的创建 297
9.3.2解析URL 298
9.3.3获取数据 298
9.4 InetAddress类 300
9.5 Socket套接字 301
9.5.1 ServerSocket类 302
9.5.2 Socket类 303
9.5.3组播套接字 306
9.6综合示例:聊天室程序 308
小结 313
习题 314
上机指导 314
实验一 创建URL连接 314
实验二 获得URL中的数据 314
第10章 高级应用 316
10.1线程 316
10.1.1 Java中的线程模型 316
10.1.2线程的创建 318
10.1.3线程的同步 319
10.1.4线程的调度 322
10.1.5线程的其他方法 324
10.2 Servlet和JSP技术 327
10.2.1 JSP概述 327
10.2.2 JSP语法 328
10.2.3 JSP与JavaBean 330
10.2.4 Servlet技术 332
10.3数据库技术 335
10.3.1 SQL基础 336
10.3.2 JDBC层次结构 337
10.3.3加载数据库驱动 338
10.3.4基本数据库访问 339
小结 341
习题 341
上机指导 341
实验一 创建多线程 341
实验二 使用JSP 342