项目一 认识Java 1
任务一 了解Java的产生、发展与特点 1
一、Java的产生与发展 1
二、Java语言的特点 2
任务二 熟悉Java的开发工具与开发环境 3
一、JRE、JVM与JDK 4
案例1-1 Sun JDK的下载、安装和配置 4
二、优秀的Java集成开发环境Eclipse 11
案例1-2 Eclipse下载与基本使用方法 12
任务三 了解Java程序的基本结构 16
案例1-3 使用JDK开发一个简单的Java应用程序 16
案例1-4 使用Eclipse开发一个简单的Java程序 18
案例1-5 开发一个简单的JavaApplet 23
综合实训 算数运算 25
项目小结 27
思考与练习 27
项目二 Java语言编程基础 29
任务一 了解Java的标识符与关键字 29
一、Java标识符的命名规则 30
二、Java关键字与保留字 30
案例2-1 识别Java的合法标识符 31
任务二 了解Java的数据类型 31
一、Java的数据类型 31
二、数据类型转换 33
三、各种数据类型数据的表示方式 34
任务三 了解Java的变量和常量 36
一、声明变量的方法 36
二、声明常量的方法 37
任务四 了解Java的运算符与表达式 38
一、算术运算符及其表达式 38
二、关系运算符及其表达式 39
三、逻辑运算符及其表达式 39
四、赋值运算符及其表达式 40
五、条件运算符及其表达式 40
六、位运算符及其表达式 41
案例2-2 用按位异或运算符实现数据加密/解密 42
七、运算符的优先级 43
任务五 熟悉Java程序的流程控制语句 44
一、顺序结构 44
二、选择结构 44
案例2-3 计算税款 46
案例2-4 输出某年某个月的天数 49
三、循环结构 50
案例2-5 游戏中生命力购买问题 51
四、跳转语句 53
任务六 掌握Java程序的注释用法 54
综合实训 显示素数 55
项目小结 56
思考与练习 56
项目三 Java面向对象程序设计 59
任务一 了解面向对象程序设计的基本概念 59
一、对象 59
二、类 60
三、封装 60
四、继承 60
五、多态 61
任务二 掌握类的使用方法 61
一、类声明 63
二、成员变量与常量 65
三、方法的声明与实现 68
四、类的构造方法 75
案例3-1 计算斐波纳契数列 78
任务三 熟悉对象的创建与使用方法 80
一、对象的创建 82
二、对象的使用 83
三、Java的垃圾回收机制——对象的清除 83
案例3-2 计算一元二次方程的根 84
任务四 了解包的创建与使用方法 85
一、包的创建、声明与使用 86
案例3-3 包的创建与使用 88
二、Java的常用包 91
综合实训 模拟贷款 93
项目小结 95
思考与练习 95
项目四 类的深入解析 97
任务一 掌握类继承的方法 97
一、成员变量的继承与隐藏 98
案例4-1 成员变量的继承与隐藏示例 98
二、方法的继承与覆盖 100
案例4-2 方法的继承与覆盖示例 100
三、构造方法的继承 102
案例4-3 构造方法的继承示例 102
四、使用类继承时子类对象和父类对象的特点 105
任务二 掌握类的多态性的使用方法 106
一、多态性的概念 106
二、通过方法覆盖实现多态性 106
案例4-4 通过类继承和方法覆盖实现多态性 106
三、通过重载方法实现多态性 109
任务三 了解抽象类的使用方法 110
案例4-5 抽象类和抽象方法的用法 110
任务四 了解接口的定义 113
一、接口的定义 113
二、接口的实现 114
三、接口的使用 114
案例4-6 接口用法示例 115
综合实训 学生管理系统 118
项目小结 119
思考与练习 120
项目五 数组和字符串 122
任务一 熟悉数组声明与使用方法 122
一、一维数组 122
案例5-1 冒泡排序 124
二、多维数组 125
案例5-2 选择题评分 126
三、对象数组 127
四、数组作为方法的参数 128
任务二 了解字符串的创建与使用方法 129
一、String类 130
二、获取字符串的长度 130
三、字符串的连接 130
四、字符串的比较 130
五、字符串的检索 131
六、String类的其他常用方法 132
七、字符串转化为相应的数值 133
八、字符串与字符数组和字节数组之间的转换 133
案例5-3 检测回文串 134
九、StringBuffer类 135
综合实训 电话号码分析与处理 136
项目小结 139
思考与练习 140
项目六 异常处理 141
任务一 了解Java中的异常 141
一、熟悉Java中异常的产生与处理方法 141
二、Java中异常的特点和处理机制 145
三、Java异常类及其方法 146
任务二 异常的处理 147
一、try-catch语句 147
案例6-1 数据输入格式检查 149
二、使用多重catch语句 150
三、finally语句 151
四、throw语句 152
五、throws声明 153
六、自定义异常 154
案例6-2 算数运算中的异常处理 156
综合实训 用户登录系统 158
项目小结 161
思考与练习 161
项目七 数据输入与输出 163
任务一 了解Java的输入与输出 163
一、什么是输入流与输出流 163
二、什么是字节流和字符流 164
三、标准输入/输出类System 164
四、字节与字符输入/输出流类 166
案例7-1 利用InputStreamReader类和BufferedReader类输入数据 171
五、使用Scanner类输入各种类型的数据 172
案例7-2 利用Scanner类输入一组浮点数 173
任务二 掌握文件的读写与管理方法 174
一、文件字节输入/输出流 174
案例7-3 利用字节输入/输出流读写文件 175
二、文件字符输入/输出流 176
案例7-4 利用字符输入/输出流读写文件 177
三、利用File类管理文件 179
案例7-5 利用File类创建、删除目录和文件 180
四、使用RandomAccessFile类随机读写文件 181
案例7-6 利用RandomAccessFile类随机读写文件 183
案例7-7 账户信息管理 184
综合实训 文件复制 188
项目小结 190
思考与练习 190
项目八 Java的多线程机制 192
任务一 了解Java中的进程与线程 192
一、进程与线程 192
二、线程的生命周期 193
任务二 掌握线程的创建与启动方法 194
一、创建线程 194
二、启动线程 195
任务三 了解线程的优先级设置与调度方法 196
一、线程的优先级 196
二、线程休眠 197
三、线程让步 198
四、线程等待 199
案例8-1 模拟左右手轮流写字 200
任务四 掌握多线程的同步机制——同步方法的使用 201
案例8-2 模拟排队买票 204
综合实训 生产者与消费者的同步 205
项目小结 208
思考与练习 208
项目九 图形用户界面开发 210
任务一 了解Java的GUI开发 210
一、AWT、Swing与SWT/JFACE 210
二、AWT类库简介 211
案例9-1 会说话的按钮 213
任务二 掌握容器组件的用法 216
一、窗体容器Frame 217
二、面板容器Panel 217
案例9-2 创建简易文本编辑器 218
任务三 掌握常用非容器组件的用法 221
一、标签组件Label 222
二、按钮组件Button 222
三、文本框组件TextField 222
案例9-3 创建用户登录界面 223
四、文本区组件TextArea 226
五、复选框组件Checkbox和单选按钮组件CheckboxGroup 226
六、选项框组件Choice 227
七、列表框组件List 227
案例9-4 创建个人信息调查表 228
八、滚动条组件Scrollbar 233
任务四 了解布局管理器的特点 235
一、顺序布局FlowLayout 236
二、边界布局BorderLayout 236
三、网格布局GridLayout 237
四、卡片布局CardLayout 238
任务五 进一步了解GUI的事件处理机制与方法 238
一、GUI事件处理机制 239
二、事件适配器类 240
综合实训 围棋对弈 242
项目小结 248
思考与练习 248
项目十 Java网络编程入门 251
任务一 了解Java网络编程基础知识 251
一、TCP/IP协议 252
二、TCP协议与UDP协议 252
三、IP地址 253
四、端口 254
任务二 使用URL访问网络资源 254
一、创建URL对象 254
二、直接通过URL对象读取内容 255
三、建立一个URL连接并从中读取内容 256
任务三 掌握使用Socket进行网络通信的方法 257
一、流式Socket编程 258
案例10-1 基于流式Socket的client/server编程 260
二、数据报Socket编程 262
案例10-2 基于数据报Socket的client/server编程 263
综合实训 模拟网络聊天 266
项目小结 270
思考与练习 270
项目十一 Java数据库编程入门 272
任务一 了解JDBC 272
一、JDBC的工作机制 272
二、JDBC API简介 274
任务二 掌握加载JDBC驱动程序的方法 274
一、JDBC驱动程序分类 274
二、加载JDBC驱动程序的方法 275
任务三 掌握创建数据库连接的方法 276
一、建立数据库连接的方法 276
二、JDBC url参数详解 276
三、ODBC数据源设置方法 277
任务四 掌握访问数据库的方法 280
一、增加记录 280
二、删除记录 281
三、修改记录 282
四、查询记录 283
综合实训 图书查询 284
项目小结 286
思考与练习 287
项目十二 图书管理系统开发 288
任务一 系统详细设计 288
一、开发环境 288
二、数据库设计 289
三、系统模块设计 290
任务二 公共模块设计 291
一、DbOp.java 291
二、BookSelect.java与ReaderSelect.java 293
三、IfBorrowBack.java 294
四、公共模块中的其他类 295
任务三 主模块设计 297
一、Login.java 297
二、ShowMain.java 299
三、BookAdd.java 303
四、BookUpdate.java 307
五、BookDelete.java 312
六、BookQuery.java 316
七、读者信息的录入、修改、删除和查询模块 320
八、Borrow.java 332
九、Back.java 339
十、UpdatePassword.java 344