第1章 Java语言概述 1
1.1 Java语言的过去与未来 1
1.1.1 Java语言的起源 1
1.1.2 Java语言的发展前景 2
1.2 Java的基本体系 2
1.2.1 Java的语法 2
1.2.2 Java的工作原理 3
1.2.3 Java的运行环境 4
1.2.4 Java语言的特点 5
1.3 Java程序的运行 7
1.3.1 SDK的安装与配置 7
1.3.2 Java程序的开发过程 10
1.3.3 Java开发工具简介 11
1.3.4 Java应用程序和Java小应用程序的开发 13
1.4 上机练习 20
1.4.1 编写并运行Java Application程序 20
1.4.2 编写并运行Java Applet程序 21
1.5 习题 22
第2章 面向对象编程思路 23
2.1 面向过程与面向对象 23
2.1.1 编程思路的发展 23
2.1.2 面向对象程序设计的优点 24
2.2 对象入门 26
2.2.1 对象的属性 27
2.2.2 对象的关系 28
2.3 Java面向对象的开发过程 29
2.3.1 面向对象的分析 29
2.3.2 面向对象的设计 30
2.3.3 面向对象的实现 31
2.4 上机练习 32
2.5 习题 34
第3章 Java基本语法 35
3.1 Java语言的基本组成元素 35
3.1.1 关键字与标识符 35
3.1.2 运算符与表达式 36
3.2 Java基本数据类型 45
3.2.1 简单数据类型 45
3.2.2 复杂数据类型 50
3.2.3 数据类型的转换 50
3.2.4 应用举例——通过可视化界面操作的数据类型转化 52
3.3 控制语句 55
3.3.1 分支语句 55
3.3.2 循环语句 58
3.3.3 跳转语句 61
3.4 上机练习 64
3.4.1 查看循环类型 64
3.4.2 使用各种语句编程 66
3.5 习题 68
第4章 数组与字符串 69
4.1 数组 69
4.1.1 一维数组与多维数组 69
4.1.2 数组函数的使用 77
4.1.3 向量类 79
4.1.4 应用举例——数组与向量类的使用 80
4.2 字符串 82
4.2.1 String类 82
4.2.2 StringBuffer类 83
4.2.3 字符串的常用方法 84
4.2.4 应用举例——字符串操作的综合应用 85
4.3 上机练习 87
4.3.1 数组的定义和使用 87
4.3.2 创建向量类 88
4.4 习题 89
第5章 面向对象程序设计 91
5.1 类 91
5.1.1 类的定义 91
5.1.2 属性和方法 93
5.1.3 类的访问 95
5.1.4 应用举例——创建学生类Student 97
5.2 对象 98
5.2.1 对象的定义 98
5.2.2 方法的参数传递 101
5.2.3 应用举例——学生类Student对象定义 103
5.3 基本方法 105
5.3.1 构造方法 105
5.3.2 继承 107
5.3.3 方法的重载与覆盖 110
5.3.4 静态变量和方法 113
5.3.5 常量和最终方法 115
5.3.6 抽象方法 116
5.3.7 this与super 117
5.4 内部类 119
5.4.1 内部类的定义 119
5.4.2 内部类的使用方法 119
5.4.3 应用举例——设计点类作为直线类的内部类 121
5.5 上机练习 123
5.5.1 编写复数类实现复数运算 123
5.5.2 定义抽象类车类 125
5.6 习题 127
第6章 面向对象的高级特征 128
6.1 包 128
6.1.1 包的声明 128
6.1.2 包的引用 130
6.1.3 应用举例——创建并引用包求素数 130
6.2 接口 132
6.2.1 接口的概念和意义 132
6.2.2 接口的声明和继承 132
6.2.3 接口的实现 133
6.2.4 接口回调 134
6.2.5 应用举例——定义并使用接口Animal 135
6.3 Java系统类库 137
6.4 上机练习 138
6.4.1 定义和调用接口 138
6.4.2 包的创建和引用 140
6.5 习题 142
第7章 异常处理机制 143
7.1 Java中的异常 143
7.1.1 异常和错误的产生 143
7.1.2 异常的层次结构 145
7.2 异常处理机制 146
7.2.1 异常的捕获和抛出 147
7.2.2 异常处理程序 147
7.2.3 自定义异常 148
7.2.4 应用举例——抛出异常 150
7.3 上机练习 151
7.4 习题 152
第8章 图形用户界面设计 153
8.1 容器和组件 153
8.1.1 图形用户界面 153
8.1.2 容器和组件的概念 154
8.1.3 容器与组件结构模型 154
8.1.4 应用实例——Frame类与Panel类的创建 155
8.2 布局管理机制 157
8.2.1 布局管理机制 157
8.2.2 顺序布局管理器 157
8.2.3 边界布局管理器 159
8.2.4 网格布局管理器 160
8.2.5 卡片布局管理器 162
8.2.6 网格包布局管理器 163
8.2.7 应用举例——按钮的布局 165
8.3 AWT组件 166
8.3.1 AWT概述 166
8.3.2 标签(Label) 167
8.3.3 按钮(Button) 168
8.3.4 文本组件(TextField和TextArea) 169
8.3.5 复选框(CheckBox) 170
8.3.6 画布(Canvas) 172
8.3.7 列表框(List) 173
8.3.8 对话框(Dialog) 174
8.3.9 文件对话框(FileDialog) 177
8.3.10 菜单组件(MenuComponent) 179
8.3.11 弹出式菜单(PopupMenu) 183
8.3.12 应用举例——计算器操作界面设计 185
8.4 AWT事件处理机制 187
8.4.1 事件处理的概念 187
8.4.2 事件处理模型 187
8.4.3 事件分类 190
8.4.4 事件处理基本概念 191
8.4.5 用内部类实现事件处理 194
8.4.6 事件适配器 195
8.4.7 应用举例——具备计算功能的计算器 197
8.5 Swing组件 199
8.5.1 Swing组件概述 200
8.5.2 JComponent类 201
8.5.3 AbstractButton类 201
8.5.4 JcomboBox组件 202
8.5.5 JList组件 202
8.5.6 JSlider组件 202
8.5.7 JInternalFrame组件 203
8.5.8 应用举例——创建工具栏 203
8.6 上机练习 205
8.6.1 创建鼠标适配器 205
8.6.2 制作Frame界面 210
8.7 习题 212
第9章 多媒体技术 213
9.1 图形处理技术 213
9.1.1 Graphics图形类 213
9.1.2 基本图形绘制 214
9.1.3 图形效果处理技术 218
9.1.4 应用举例——制作舞动的奥运连环 223
9.2 声音处理技术 224
9.2.1 Applet的play方法 224
9.2.2 Applet类的getAudioClip方法 225
9.2.3 应用举例——简单的音乐播放器 227
9.3 Java Applet 229
9.3.1 Applet概述 229
9.3.2 Applet的编写 230
9.3.3 应用举例——HTML文件的参数设定 233
9.4 上机练习 233
9.4.1 Mouse测试显示鼠标单击的位置 234
9.4.2 编写程序实现鼠标绘制直线 235
9.5 习题 238
第10章 多线程 239
10.1 多线程技术的基本概念 239
10.1.1 什么是线程 239
10.1.2 线程的生命周期 240
10.1.3 多线程技术 240
10.2 多线程技术的实现 240
10.2.1 线程的创建 241
10.2.2 如何实现多线程 244
10.2.3 线程同步 246
10.2.4 线程死锁 247
10.2.5 线程调度 250
10.2.6 应用举例——抢硬币 250
10.3 上机练习 251
10.4 习题 253
第11章 输入输出流 254
11.1 流的基本概念 254
11.1.1 什么是流 254
11.1.2 输入输出流机制 255
11.1.3 流的分类 256
11.2 流的使用 258
11.2.1 InputStream和OutputStream 258
11.2.2 数据流链接 259
11.2.3 应用举例——通过流读取信息 260
11.3 文件处理 261
11.3.1 File类 261
11.3.2 FileInputStream与FileOutputStream类 262
11.3.3 RandomAccessFile类 264
11.3.4 应用举例——文件信息读取与复制 266
11.4 上机练习 266
11.4.1 通过文件流写入和读出文件 267
11.4.2 创建应用程序 268
1 1.5 习题 270
第12章 Java网络编程 271
12.1 网络编程基础知识 271
12.1.1 网络编程基本理论 271
12.1.2 网络编程基本概念和方法 272
12.2 统一资源定位符 273
12.2.1 创建URL对象 273
12.2.2 使用URL获取网络资源 274
12.2.3 URLConnection网络通信 277
12.2.4 应用举例——获取网站信息 278
12.3 Socket编程 280
12.3.1 Socket基础知识 281
12.3.2 Socket编程的工作原理 281
12.3.3 TCP/IP Socket连接 282
12.3.4 UDP Socket连接 284
12.4 上机练习 288
12.5 习题 290
第13章 项目设计案例 291
13.1 功能需求分析 291
13.2 总体设计 291
13.3 详细设计 292
13.3.1 主模块(MainWindow) 292
13.3.2 监听模块(Listen) 293
13.3.3 点模块(CrossPoint) 293
13.3.4 棋盘模块(Board) 294
13.4 编码实现 294
13.4.1 主模块(MainWindow.java) 295
13.4.2 监听模块(Listen.java) 310
13.4.3 点模块(CrossPoint.java) 310
13.4.4 棋盘模块(Board.java) 311
13.5 程序运行与发布 319
13.5.1 程序运行 319
13.5.2 程序发布 321
13.6 习题 321