基础篇 3
单元1构建应用程序开发环境 3
1.1引导资料 3
1.1.1 Java的由来 3
1.1.2 Java的特点 3
1.1.3教学项目功能简述 4
1.2阶段任务实施 5
1.2.1[引导任务1-1]建立餐饮系统的开发环境 5
1.2.2[引导任务1-2]用Java程序输出餐饮系统的作者姓名 6
1.2.3[引导任务1-3]用Java程序输出餐饮系统的作者姓名和运行时间 7
1.3知识解析 8
1.3.1开发Java程序的步骤 8
1.3.2认识Java包 8
1.3.3包声明 8
1.3.4 import语句 9
1.3.5认识Java类 9
1.3.6认识main方法 9
1.3.7输出打印 9
1.3.8连接符号 9
1.3.9初学者常犯的错误 10
1.3.10断点调试 10
1.4训练任务 10
课外习题 10
单元2利用符号构建Java语句 12
阶段一:标识符、数据类型与变量 12
2.1[引导任务2-1]输出一次餐饮消费中的消费清单 12
2.1.1任务要求与目标 12
2.1.2实施过程 12
2.2知识解析 13
2.2.1 Java的字符集 13
2.2.2标识符 14
2.2.3关键字 14
2.2.4分隔符与注释 14
2.2.5数据类型 15
2.2.6变量与常量 15
2.2.7数据类型的转换 17
2.3训练任务 17
2.3.1跟我学 17
2.3.2自己做 17
阶段二:操作符与表达式 18
2.4[引导任务2-2]输出会员在一次餐饮消费中的消费清单 18
2.4.1任务目标与要求 18
2.4.2实施过程 18
2.5知识解析 20
2.5.1运算符与表达式 20
2.5.2赋值运算符 20
2.5.3算术运算符 20
2.5.4关系运算符 21
2.5.5逻辑运算符 22
2.5.6位运算符 22
2.5.7条件运算符 23
2.5.8其他运算符 23
2.5.9运算符优先级 24
2.6训练任务 24
2.6.1跟我学 24
2.6.2自己做 24
课外习题 25
单元3利用控制结构实现程序业务逻辑 27
阶段一:分支结构——if语句 27
3.1[引导任务3-1]改进在一次餐饮消费中的消费清单的输出程序 27
3.1.1任务要求与目标 27
3.1.2实施过程 27
3.2[引导任务3-2]根据餐饮会员的积分值判断会员的等级 29
3.2.1任务要求与目标 29
3.2.2实施过程 29
3.3知识解析 30
3.3.1基本if分支结构 30
3.3.2键盘输入 30
3.3.3嵌套的if结构 31
3.4训练任务 31
3.4.1跟我学 31
3.4.2自己做 32
阶段二:分支结构——switch语句 33
3.5[引导任务3-3]设计出可供三种会员等级消费的选择主界面 33
3.5.1任务要求与目标 33
3.5.2实施过程 33
3.6知识解析:switch选择结构 34
3.7训练任务 35
3.7.1跟我学 35
3.7.2自己做 35
阶段三:循环结构——for语句 37
3.8[引导任务3-4]输入某顾客一次餐饮消费中的消费清单 37
3.8.1任务要求与目标 37
3.8.2实施过程 37
3.9知识解析:for循环结构 38
3.10训练任务 39
3.10.1跟我学 39
3.10.2自己做 39
阶段四:循环结构——while语句与do…while语句 40
3.11[引导任务3-5]设计餐饮系统的登录界面 40
3.11.1任务要求与目标 40
3.11.2实施过程 40
3.12[引导任务3-6]设计餐饮系统登出时的界面 41
3.12.1任务要求与目标 41
3.12.2实施过程 41
3.13知识解析 42
3.13.1 while循环结构 42
3.13.2 do…while循环结构 42
3.14训练任务 43
3.14.1跟我学 43
3.14.2自己做 43
阶段五:控制转移 44
3.15[引导任务3-7]用程序描述顾客点菜的过程 44
3.15.1任务要求与目标 44
3.15.2实施过程 44
3.16知识解析 45
3.16.1 continue语句 45
3.16.2 break语句 46
3.16.3 return语句 47
3.17训练任务 47
3.17.1跟我学 47
3.17.2自己做 47
课外习题 48
单元4设计应用程序的类与接口 50
4.1引导资料 50
4.1.1面向对象的基本概念 50
4.1.2面向对象的特性 51
阶段一:类 52
4.2[引导任务4-1]定义菜品类 52
4.2.1任务要求与目标 52
4.2.2实施过程 52
4.3知识解析 53
4.3.1类的声明 53
4.3.2成员变量 54
4.3.3成员方法 55
4.3.4构造方法 56
4.3.5 this 58
4.3.6方法重载 58
4.3.7内部类 60
4.4训练任务 61
4.4.1跟我学 61
4.4.2自己做 61
阶段二:对象 65
4.5[引导任务4-2]为菜品类添加主方法 65
4.5.1任务要求与目标 65
4.5.2实施过程 65
4.6知识解析 66
4.6.1对象的创建 66
4.6.2对象的使用 66
4.6.3访问控制 67
4.6.4 Java的垃圾回收 69
4.6.5 static 70
4.6.6对象的比较 71
4.7训练任务 72
4.7.1跟我学 72
4.7.2自己做 72
阶段三:继承 72
4.8[引导任务4-3]实现餐饮管理系统消费结算功能 72
4.8.1任务要求与目标 72
4.8.2实施过程 73
4.9知识解析 74
4.9.1继承 74
4.9.2隐藏与覆盖 74
4.9.3 super 75
4.9.4抽象类和抽象方法 76
4.9.5 final修饰符 77
4.9.6多态性 78
4.9.7初始化的过程 78
4.10训练任务 79
4.10.1跟我学 79
4.10.2自己做 79
阶段四:接口 80
4.11[引导任务4-4]自定义一个用于消费结算的接口 80
4.11.1任务要求与目标 80
4.11.2实施过程 80
4.12知识解析 82
4.12.1接口 82
4.12.2接口的实现 83
4.13训练任务 83
4.13.1跟我学 83
4.13.2自己做 83
课外习题 85
单元5利用数组与类库构建程序 88
阶段一:数组 88
5.1[引导任务5-1]用数组来存取菜谱 88
5.1.1任务要求与目标 88
5.1.2实施过程 88
5.2知识解析 89
5.2.1一维数组 89
5.2.2二维数组 90
5.3训练任务 91
5.3.1跟我学 91
5.3.2自己做 91
阶段二:Java集合框架 92
5.4[引导任务5-2]利用Vector暂存点菜数据 92
5.4.1任务要求与目标 92
5.4.2实施过程 92
5.5[引导任务5-3]利用LinkedList暂存蛇体数据 93
5.5.1任务要求与目标 93
5.5.2实施过程 93
5.6知识解析 94
5.6.1集合概述 94
5.6.2 Collection接口 94
5.6.3 Map接口 96
5.7训练任务 97
5.7.1跟我学 97
5.7.2自己做 97
阶段三:字符串 98
5.8[引导任务5-4]获取并过滤打印点菜单输出文件 98
5.8.1任务要求与目标 98
5.8.2实施过程 98
5.9知识解析 99
5.9.1字符串 99
5.9.2 String类 99
5.9.3 StringBuffer 102
5.10 训练任务 103
5.10.1跟我学 103
5.10.2自己做 103
阶段四:文件操作与异常 104
5.11[引导任务5-5]输出点菜单信息到文件中 104
5.11.1任务要求与目标 104
5.11.2实施过程 104
5.12知识解析 105
5.12.1文件操作 105
5.12.2异常处理 108
5.13训练任务 111
5.13.1跟我学 111
5.13.2自己做 111
课外习题 114
应用篇 119
单元6构建应用程序图形用户界面 119
6.1引导资料 119
6.1.1 AWT(Abstract Window Toolkit) 119
6.1.2 Swing组件 119
阶段一:Swing窗口与容器 120
6.2[引导任务6-1]设计餐饮信息管理系统的登录界面 120
6.2.1任务要求与目标 120
6.2.2实施过程 120
6.3[引导任务6-2]布局餐饮系统主界面 122
6.3.1任务要求与目标 122
6.3.2实施过程 122
6.4知识解析 123
6.4.1框架(JFrame) 123
6.4.2布局管理(Layout) 123
6.4.3 JPanel面板(JPanel) 124
6.4.4对话框(JDialog) 125
6.4.5 JfileChooser 125
6.4.6 JcolorChooser 126
6.5训练任务 126
6.5.1跟我学 126
6.5.2自己做 126
阶段二:Swing菜单 127
6.6[引导任务6-3]设计餐饮信息管理系统主菜单 127
6.6.1任务要求与目标 127
6.6.2实施过程 127
6.7知识解析 128
6.7.1菜单栏组件(JMenuBar) 128
6.7.2菜单组件(JMenu) 128
6.7.3菜单项组件(JMenuItem) 128
6.8训练任务 129
6.8.1跟我学 129
6.8.2自己做 129
阶段三:Swing常用控件 129
6.9[引导任务6-4]设计餐饮信息管理系统的主界面 129
6.9.1任务要求与目标 129
6.9.2实施过程 130
6.10[引导任务6-5]设计增加菜品的界面 130
6.10.1任务要求与目标 130
6.10.2实施过程 130
6.11[引导任务6-6]设计录入点菜单的界面 131
6.11.1任务要求与目标 131
6.11.2实施过程 131
6.12[引导任务6-7]设计餐饮信息管理系统的修改菜簿界面 133
6.12.1任务要求与目标 133
6.12.2实施过程 133
6.13[引导任务6-8]设计删除菜品的界面 134
6.13.1任务要求与目标 134
6.13.2实施过程 134
6.14[引导任务6-9]设计查询菜品的界面 136
6.14.1任务要求与目标 136
6.14.2实施过程 136
6.15[引导任务6-10]设计更改点菜单的界面 137
6.15.1任务要求与目标 137
6.15.2实施过程 137
6.16[引导任务6-11]设计打印点菜单的界面 138
6.16.1任务要求与目标 138
6.16.2实施过程 138
6.17知识解析 139
6.17.1标签(JLabel) 139
6.17.2文本字段(JTextField) 139
6.17.3口令字段(JPasswordField) 139
6.17.4按钮(JButton) 140
6.17.5按钮组(ButtonGroup) 140
6.17.6单选钮(JRadioButton) 140
6.17.7组合框(JComboBox) 141
6.17.8文本区域(JTextArea) 141
6.17.9滚动窗口(JScrollPane) 141
6.17.10表(JTable) 141
6.17.11分隔符(JSeparator) 142
6.17.12复选框(JCheckBox) 142
6.18训练任务 142
6.18.1跟我学 142
6.18.2自己做 142
课外习题 145
单元7实现贪吃蛇游戏 147
7.1引导资料 147
7.1.1事件处理模型 147
7.1.2事件处理中的几个概念 148
7.1.3事件类的结构 148
7.1.4事件处理程序编写过程 149
阶段一:绘制图形 149
7.2[引导任务7-1]设置贪吃蛇程序中的公共属性值 149
7.2.1任务要求与目标 149
7.2.2实施过程 149
7.3[引导任务7-2]修改墙体类,增加绘制墙体等操作方法 150
7.3.1任务要求与目标 150
7.3.2实施过程 150
7.4[引导任务7-3]修改食物类,增加绘制食物等操作方法 151
7.4.1任务要求与目标 151
7.4.2实施过程 151
7.5[引导任务7-4]修改蛇体类,增加绘制蛇体等操作方法 152
7.5.1任务要求与目标 152
7.5.2实施过程 152
7.6[引导任务7-5]绘制墙体、食物与蛇体 154
7.6.1任务要求与目标 154
7.6.2实施过程 155
7.7知识解析 156
7.7.1绘图机制 156
7.7.2 Graphics类 156
7.8训练任务 160
7.8.1跟我学 160
7.8.2自己做 160
阶段二:事件 167
7.9[引导任务7-6]为菜单、按钮添加动作事件 167
7.9.1任务要求与目标 167
7.9.2实施过程 167
7.10[引导任务7-7]用键盘中的方向键控制蛇的运动方向 171
7.10.1任务要求与目标 171
7.10.2实施过程 171
7.11知识解析 173
7.11.1 ActionListener接口 173
7.11.2 MouseListener接口与MouseMotionListener接口 173
7.11.3 KeyListener接口 176
7.12训练任务 176
7.12.1跟我学 176
7.12.2自己做 177
阶段三:线程 180
7.13[引导任务7-8]让蛇动起来 180
7.13.1任务要求与目标 180
7.13.2实施过程 180
7.14[引导任务7-9]动态显示蛇的运行状态 182
7.14.1任务要求与目标 182
7.14.2实施过程 182
7.15知识解析 184
7.15.1多线程简介 184
7.15.2线程的生存周期 184
7.15.3 Java中线程的创建 185
7.16训练任务 186
7.16.1跟我学 186
7.16.2自己做 186
课外习题 187
单元8餐饮管理系统的实现 190
8.1引导资料 190
8.1.1 Java DB 190
8.1.2 JDBC 190
阶段一:Java DB 191
8.2[引导任务8-1]为餐饮信息管理系统创建数据库 191
8.2.1任务要求与目标 191
8.2.2实施过程 192
8.3知识解析 193
8.3.1修改表 193
8.3.2查看数据 194
8.3.3引用外部数据库 194
8.4训练任务 194
8.4.1跟我学 194
8.4.2自己做 194
阶段二:JDBC 195
8.5[引导任务8-2]使用JDBC访问餐饮信息管理系统数据库 195
8.5.1任务要求与目标 195
8.5.2实施过程 195
8.6知识解析 198
8.6.1驱动程序加载 198
8.6.2 JDBC URL 198
8.6.3 DriverManager类 198
8.6.4 Connection类 198
8.6.5 Statement类 199
8.6.6 PreparedStatement类 199
8.6.7 Resulset类 200
8.6.8 Callable Statement类 201
8.7训练任务 201
8.7.1跟我学 201
8.7.2自己做 201
阶段三:编写响应事件 202
8.8[引导任务8-3]为系统的登录界面添加动作事件处理程序 202
8.8.1任务要求与目标 202
8.8.2实施过程 202
8.9[引导任务8-4]为系统的主界面的菜单添加动作事件 205
8.9.1任务要求与目标 205
8.9.2实施过程 205
8.10[引导任务8-5]为系统的主界面添加动作事件 207
8.10.1任务要求与目标 207
8.10.2实施过程 207
8.11[引导任务8-6]为增加菜品界面添加动作事件 210
8.11.1任务要求与目标 210
8.11.2实施过程 210
8.12[引导任务8-7]为修改菜品界面添加动作事件 214
8.12.1任务要求与目标 214
8.12.2实施过程 215
8.13[引导任务8-8]为删除菜品界面添加动作事件 219
8.13.1任务要求与目标 219
8.13.2实施过程 219
8.14[引导任务8-9]为查询菜品界面添加动作事件 222
8.14.1任务要求与目标 222
8.14.2实施过程 222
8.15[引导任务8-10]为录入点菜单界面添加动作事件 225
8.15.1任务要求与目标 225
8.15.2实施过程 225
8.16[引导任务8-11]为更改点菜单界面添加动作事件 230
8.16.1任务要求与目标 230
8.16.2实施过程 230
8.17[引导任务8-12]为打印点菜单界面添加动作事件 238
8.17.1任务要求与目标 238
8.17.2实施过程 238
8.18[引导任务8-13]为打印点菜单界面添加文件输出动作事件 242
8.18.1任务要求与目标 242
8.18.2实施过程 242
8.19[引导任务8-14]为打印点菜单界面添加输出打印动作事件 244
8.19.1任务要求与目标 244
8.19.2实施过程 244
8.20训练任务 247
8.20.1跟我学 247
8.20.2自己做 247
课外习题 248
单元9龟兔赛跑游戏的设计 249
9.1引导资料 249
9.1.1 Java Applet简介 249
9.1.2 Java Applet的生命周期 249
9.2[引导任务9-1]设计龟兔赛跑游戏的初始界面 250
9.2.1任务要求与目标 250
9.2.2实施过程 250
9.3[引导任务9-2]在HTML页面中运行Applet程序TRRace 252
9.3.1任务要求与目标 252
9.3.2实施过程 252
9.4知识解析 253
9.5训练任务 254
9.5.1跟我学 254
9.5.2自己做 254
课外习题 254
附录 SQL简介 256