项目1 第一个Java程序 1
任务1 熟悉Java语言 1
1.1.1 面向过程和面向对象 2
1.1.2 Java语言的发展 2
1.1.3 任务实施 3
任务2 安装开发环境JDK 4
1.2.1 下载JDK 4
1.2.2 安装JDK 6
1.2.3 配置环境变量 7
1.2.4 测试环境配置成功 9
任务3 编写第一个Java程序 10
1.3.1 编写Java源程序 10
1.3.2 编译和运行 10
任务4 任务拓展 12
1.4.1 下载和安装Eclipse 12
1.4.2 启动Eclipse 13
1.4.3 开发Java项目 14
1.4.4 网络资源 17
1.4.5 自己动手 18
习题1 18
项目2 简易计算器 19
任务1 实现加法运算功能 20
2.1.1 标识符和关键字 20
2.1.2 变量 21
2.1.3 常量 22
2.1.4 数据类型 23
2.1.5 运算符 26
2.1.6 任务实施 34
2.1.7 任务完善 34
任务2 实现除法运算功能 35
2.2.1 if语句 35
2.2.2 任务实施 40
任务3 界面设计 41
2.3.1 switch语句 41
2.3.2 任务实施 43
任务4 实现累加和功能 45
2.4.1 for语句 45
2.4.2 任务实施 50
任务5 任务拓展 51
2.5.1 break语句 51
2.5.2 continue语句 52
2.5.3 循环嵌套 53
综合项目 57
习题2 58
项目3 学生信息管理系统开发 61
任务1 成绩录入 62
3.1.1 一维数组的定义 62
3.1.2 一维数组的引用 63
3.1.3 任务实施 66
任务2 成绩模块的排序 66
3.2.1 冒泡法排序 66
3.2.2 任务实施 68
任务3 多门课程成绩的管理 69
3.3.1 二维数组定义 69
3.3.2 二维数组的引用 70
3.3.3 任务实施 72
任务4 任务拓展 73
习题3 75
项目4 扩展学生信息管理系统 77
任务1 掌握面向对象编程的基本思想和概念 77
4.1.1 面向对象编程的基本思想 78
4.1.2 面向对象编程的基本概念 79
4.1.3 任务实施 81
任务2 对象、类的Java实现 82
4.2.1 类的定义 82
4.2.2 创建对象 86
4.2.3 任务实施 87
任务3 重载方法、构造方法实现 88
4.3.1 重载方法 89
4.3.2 构造方法 90
4.3.3 任务实施 92
任务4 实现学生类继承 93
4.4.1 类的继承 93
4.4.2 构造方法的继承 95
4.4.3 成员变量的隐藏和方法覆盖 98
4.4.4 多态性 100
4.4.5 任务实施 102
任务5 实现访问控制 103
4.5.1 包 103
4.5.2 类成员的访问权限 105
4.5.3 任务实施 109
任务6 把父类进一步抽象 110
4.6.1 抽象类 110
4.6.2 接口 112
4.6.3 任务实施 115
任务7 任务拓展 115
4.7.1 static关键字 115
4.7.2 final关键字 117
4.7.3 Java API包 117
4.7.4 常用API的使用 117
4.7.5 Java Applet 119
综合项目 122
习题4 122
项目5 学生信息管理系统的异常处理 124
任务1 认识异常 124
5.1.1 生活中的异常 124
5.1.2 程序中的异常 125
5.1.3 什么是异常 126
任务2 异常处理 126
5.2.1 异常类的层次结构 126
5.2.2 Java的异常处理 127
5.2.3 声明抛出异常 132
习题5 135
项目6 在学生信息系统中利用集合和泛型 138
任务1 了解Java集合框架 139
任务2 利用ArrayList类存储学生信息 140
6.2.1 ArrayList类 140
6.2.2 任务实施 143
任务3 利用HashMap类存储学生信息 144
6.3.1 HashMap类 145
6.3.2 任务实施 146
任务4 用泛型方法实现学生信息录入 147
6.4.1 泛型方法的定义 147
6.4.2 泛型方法的使用 148
6.4.3 任务实施 150
任务5 用泛型类实现学生信息交换 150
6.5.1 泛型类的定义和使用 151
6.5.2 任务实施 153
任务6 用泛型集合实现学生信息查询 154
6.6.1 泛型集合的定义 154
6.6.2 任务实施 156
任务7 任务拓展 157
习题6 158
项目7 基于文件的学生成绩管理系统 162
任务1 文件的表示 163
7.1.1 File类的构造方法 163
7.1.2 File类的常用方法 164
7.1.3 任务实施 166
任务2 通过字符流读写文件 166
7.2.1 Writer和FileWriter 167
7.2.2 Reader和FileReader 170
7.2.3 BufferedWriter 171
7.2.4 BufferedReader 173
任务3 通过字节流读写文件 174
7.3.1 OutputStream和FileOutputStream 175
7.3.2 InputStream和FileInputStream 177
7.3.3 BufferedOutputStream和BufferedInputStream 179
任务4 对象序列化 181
7.4.1 对象序列化的实现 181
7.4.2 对象反序列化的实现 183
任务5 项目实施 184
7.5.1 实现学生成绩管理系统 185
7.5.2 设计分析 190
习题7 191
项目8 基于数据库的学生成绩管理系统 194
任务1 建立数据库的连接 195
8.1.1 JDBC的主要类和接口 196
8.1.2 JDBC操作数据库的步骤 196
8.1.3 任务实施 199
任务2 查询学生成绩表 200
8.2.1 顺序查询 200
8.2.2 可滚动查询 202
8.2.3 任务实施 204
任务3 更新学生成绩表 206
任务4 任务拓展 208
习题8 211
项目9 桌面应用程序简易计算器的开发 212
任务1 设计简易计算器窗体 213
9.1.1 图形用户界面设计 213
9.1.2 JFrame类 215
9.1.3 JPanel类 217
9.1.4 任务实施 218
任务2 设计简易计算器的面板 219
9.2.1 JButton按钮类 219
9.2.2 JLable标签类 222
9.2.3 JTextField和JPasswordField 223
9.2.4 JTextArea文本区类 225
9.2.5 JRadioButton单选按钮类 226
9.2.6 JCheckBox复选框类 229
9.2.7 JComboBox下拉列表框类 230
9.2.8 布局管理器 232
9.2.9 任务实施 238
任务3 实现简易计算器的功能 242
9.3.1 事件处理机制 242
9.3.2 任务实施 249
任务4 任务拓展 254
9.4.1 菜单 254
9.4.2 弹出菜单 257
9.4.3 标准对话框 259
9.4.4 工具栏 261
综合项目 264
习题9 264
项目10 简单的C/S结构聊天室 266
任务1 基于TCP的简单通信 266
10.1.1 网络编程的基础知识 267
10.1.2 Java的基本网络支持 270
10.1.3 基于TCP协议的网络编程 276
10.1.4 任务实施 278
任务2 基于多线程的简单聊天室 280
10.2.1 多线程 280
10.2.2 任务实施 283
任务3 任务拓展 286
习题10 291
项目11 综合实训项目 293
附录 ASCII代码表 304
参考文献 305