第一部分实用教程 3
第1章概述 3
1.1 了解Java 3
1.1.1 Java的特点 3
目录 3
1.1.2 Java的实现机制 4
1.1.3 Java的核心技术 5
1.2 Java的运行环境JDK 6
1.2.1 Java软件环境的安装 7
1.2.2 Java程序的编辑、编译与运行 9
第2章Java语言基础 11
2.1标识符与关键字 11
2.2基本数据类型 12
2.3变量与常量 14
2.4.1赋值 15
2.4运算符与表达式 15
2.4.2运算符 16
2.4.3表达式 20
2.5流程控制 22
2.5.1程序控制结构 22
2.5.2分支语句 23
2.5.3循环语句 27
2.5.4转向语句 35
2.6数组 36
2.6.1 一维数组 36
2.6.2二维数组 41
2.6.3不规则的多维数组 44
2.7字符串 46
3.2类的创建 50
3.1类与对象 50
第3章面向对象技术 50
3.2.1类的声明 51
3.2.2类主体 51
3.3对象的创建 53
3.3.1创建对象 54
3.3.2对象的使用 54
3.3.3对象的初始化 55
3.3.4对象的销毁 57
3.4类的封装 57
3.4.1封装的概念 57
3.4.2如何封装 58
3.4.3实例成员和类成员 60
3.5类的继承 62
3.5.1创建子类 63
3.5.2 this引用、super引用和instanceof对象运算符 66
3.5.3最终类和抽象类 68
3.6类的多态性 70
3.6.1方法的重载 70
3.6.2方法的覆盖 72
3.7递归方法 75
第4章Java类和对象的高级特征 79
4.1接口 79
4.1.1定义接口 79
4.1.2实现接口 80
4.2内部类 82
4.2.1内部类特性 83
4.2.2静态内部类 88
4.3包 90
4.3.1 Java的API介绍 90
4.3.2引用Java定义的包 94
4.3.3自定义包 96
第5章异常处理 102
5.1 Java异常处理的基础知识 102
5.1.1错误与异常 102
5.1.2异常处理机制 102
5.2异常类的产生、捕获与处理 103
5.3异常的分类 107
5.4抛出异常 109
5.5自定义异常类 113
第6章图形界面设计 116
6.1创建图形界面 116
6.1.1抽象窗口工具集AWT 116
6.1.2 Java的图形类结构 117
6.1.3框架与面板 119
6.1.5标签和文本行 120
6.1.4按钮 120
6.2 AWT的事件模型 122
6.2.1层次事件模型和委托事件模型 123
6.2.2 AWTEvent事件类 127
6.2.3事件类的接口 128
6.2.4事件适配器 130
6.3 AWT常用组件 131
6.3.1界面的布局 131
6.3.2文本区 135
6.3.3复选框 136
6.3.4单选按钮 139
6.3.5选择框 140
6.3.6列表框 141
6.3.7对话框 144
6.4菜单组件 145
6.5.1在组件上绘图 150
6.5.2绘图类 150
6.5图形设计 150
第7章多线程机制 156
7.1线程概念 156
7.2 Runnable接口与Thread类 157
7.3线程的控制与调度 161
7.3.1线程的生命周期 161
7.3.2线程调度与优先级 163
7.3.3改变线程状态 163
7.4线程的同步机制 169
7.4.1共享数据的线程“互斥”锁定 169
7.4.2传送数据的线程同步运行 175
7.4.3死锁问题 182
8.1.1理解数据流 187
第8章输入输出流 187
8.1数据流的基本概念 187
8.1.2 Java的标准数据流 188
8.1.3 java.io包中的数据流及文件类 189
8.2字节流初步 190
8.2.1 InputStream和OutputStream类 190
8.2.2文件字节输入流类FilenputSream 191
8.2.3文件字节输出流FileOutputStream类 193
8.3文件操作 195
8.3.1 File类 195
8.3.2文件过滤器 198
8.33文件对话框 200
8.3.4随机文件操作 202
8.4.1 Reader类和Writer类 204
8.4字符流 204
8.4.2字符文件流FileReader和FileWriter类 205
8.4.3字符缓冲流BufferedReader和BufferedWriter类 205
8.5字节流的高级应用 210
8.5.1管道流 210
8.5.2数据流 214
8.5.3对象流 217
第9章Applet应用程序 220
9.1 Applet的特点 220
9.2 Applet类 221
9.2.1 Applet的创建 221
9.2.2 Applet的生命周期 222
9.2.3 Applet的显示与刷新 225
9.3 HTML和Applet 228
9.3.1超文本标记语言 228
9.3.2 HTML中嵌入Applet 229
9.4 Applet应用 232
9.4.1标识网络上的资源 232
9.4.2显示图像 232
9.4.3播放声音 233
第10章网络通信 239
10.1网络运行机制 239
10.2使用URL访问网络资源 239
10.2.1什么是URL 239
10.2.2 URL类 240
10.2.3针对HTTP协议的URLConnection类 244
10.3 Socket通信机制 246
10.3.1 Socket通信机制的基本概念 246
10.3.2实现Socket通信 247
11.1.2 Web服务器、浏览器与HTTP 254
11.1.1客户-服务器模式 254
第1 1章Web开发技术JSP 254
11.1 Web的客户-服务器模式 254
11.1.3服务器端脚本语言概述 255
11.2运行JSP 257
11.2.1 JSP容器 257
11.2.2 JSP的运行环境Tomcat 258
11.2.3 JSP的执行过程与生命周期 260
11.3 JSP基本语法与隐式对象 261
11.3.1 JSP的基本语法 261
11.3.2 JSP隐式对象 262
第12章J2EE概论 270
12.1 J2EE的基本概念 270
12.2 J2EE的优势 270
12.3 J2EE的分布式应用模型 271
12.4 J2EE的核心技术 273
12.5 J2EE的测试平台 274
第二部分习题 281
习题1 概述 281
习题2 Java语言基础 281
习题3面向对象技术 282
习题4Java类和对象的高级特征 283
习题5异常处理 284
习题6图形界面设计 284
习题7多线程机制 284
习题8输入输出流 285
习题9 Applet应用程序 285
习题10网络通信 285
习题1 1 Web开发技术JSP 285
习题12J2EE概论 286
实验1 金额的中文大写方式 289
实验2求解约瑟夫环问题 289
实验3设计银行账户类及存取款操作方法 289
第三部分上机操作实习 289
实验4继承String类重载replace方法 290
实验5设计学生成绩表 290
实验6计算器 291
实验7利用线程比较插入、冒泡排序算法的运行时间 291
实验8使用多种方式读取文本文件 291
实验9浏览器中的图形与动画设计 292
实验10以Socket方式发送与接收邮件 292
实验1 1 网上购书 292
实习2设置日期时间属性 295
实习 3利用线程比较查找、排序算法的运行时间 295
实习1设计一个Java程序编辑器 295
第四部分综合应用实习 295
实习 4交通信号灯的线程设计 296
实习5使用对象流模拟对象数据库 296
实习6网上发牌程序 296
实习7设计邮箱 297
实习8设计一个聊天室程序 297
第五部分附录 301
附录A ASCII码表 301
附录B Java关键字表 302
附录C Java部分类库表 304
C.1 java.lang包 304
C.1.1 Object类 304
C.1.2数据类型包装类 304
C.1.3 String类 306
C.1.4 Math类 307
C.1.5 System类 308
C.1.6 Class类 308
C.1.7 Runtime类 309
C.1.8异常处理类 309
C.1.9线程类 309
C.2 java.util包 311
C.2.1 Date类 311
C.2.2 Calendar类 311
C.3 java.text包 312
C.4 java.awt包 313
C.4.1组件类及其子类 313
C.4.2事件类 319
C.4.3布局管理器 320
C.4.4字体与颜色 321
C.4.5菜单组件 322
C.4.6绘图类 324
C.5 java.io包 325
C.5.1字节流 325
C.5.2文件 328
C.5.3字符流 330
C.6 java.applet包 331
C.7 java.net包 332
C.7.1 URL 332
C.7.2 Socket 333
附录D HTML与JSP 334
D.1 HTML 334
D.2 JSP 334
参考文献 337