第1章 初识Java语言 1
1.1 Java语言概述 1
1.1.1 Java语言的发展简史 1
1.1.2 Java语言原理 2
1.1.3 Java语言的特点 3
1.1.4 Java语言集成开发环境 5
思考与练习1-1 6
1.2 安装Java语言集成开发环境 6
1.2.1 下载并安装Java2 SDK 6
1.2.2 Bin文件夹 9
1.2.3 设置环境变量 9
思考与练习1-2 11
1.3 Java语言程序的组成 12
1.3.1 Java Application和Java Applet 12
1.3.2 Java源程序的结构 12
1.3.3 Java源程序的布局 14
思考与练习1-3 14
1.4 DOS操作系统 14
1.4.1 DOS磁盘操作系统简介 14
1.4.2 常用的DOS命令 15
案例 17
1.第一个Java应用程序 17
思考与练习1-4 19
1.5 HTML语言 19
1.5.1 HTML语言简介 19
1.5.2 HTML语言的语法 20
案例 21
2.第一个Java小程序 21
思考与练习1-5 23
第2章 Java语言编程基础 24
2.1 注释语句和打印语句 24
2.1.1 注释语句 24
2.1.2 打印语句以及相关知识 25
案例 26
3.显示图文 26
思考与练习2-1 27
2.2 数据类型与变量和常量 28
2.2.1 数据类型 28
2.2.2 变量和常量 29
案例 33
4.交换变量值 33
思考与练习2-2 34
2.3 表达式和运算符 35
2.3.1 常用的表达式和运算符 35
2.3.2 数据类型的转换 39
案例 40
5.计算正方形 40
6.判断奇偶数 41
思考与练习2-3 42
2.4 面向对象和Java库类 43
2.4.1 面向对象 43
2.4.2 Java库类 44
2.4.3 Math类和Integer类 47
案例 49
7.随机数 49
思考与练习2-4 50
第3章 流程控制语句 52
3.1 分支结构语句 52
3.1.1 算法以及描述方法 52
3.1.2 if语句 55
3.1.3 switch语句 57
3.1.4 读取键盘输入的数据 59
案例 61
8.判断是否为闰年 61
9.依据考试成绩给出总评 62
思考与练习3-1 64
3.2 循环结构语句 66
3.2.1 while语句 66
3.2.2 for循环语句 68
3.2.3 多重循环语句 73
3.2.4 跳转语句 74
案例 75
10.定位输出26个英文字母及其ASCII码 75
11.猜数字 76
12.求200以内的质数 78
13.求自然常数e的值 78
14.显示九九乘法表 79
思考与练习3-2 80
3.3 优化算法 83
3.3.1 算法 83
3.3.2 穷举法 85
案例 85
15.求方程式的所有解 85
16.求特殊的三位数 86
17.使用穷举法解古代数学题 87
思考与练习3-3 88
第4章 数组和方法 90
4.1 数据结构 90
4.2 数组 91
4.2.1 一维数组 91
4.2.2 二维数组 93
4.2.3 排序 94
案例 99
18.统计候选人的票数 99
19.求两个矩阵的和 101
20.矩阵的行列互换 102
21.在一维数组中插入和删除数字 103
思考与练习4-2 105
4.3 方法和递归 106
4.3.1 方法 106
4.3.2 方法的应用 109
4.3.3 递归思想 110
案例 111
22.求2 !+4 !+…+10 !的和 111
23.费波纳契数列 112
24.哥德巴赫猜想 113
25.求最大公因数和最小公倍数 114
思考与练习4-3 117
第5章 面向对象程序设计 119
5.1 面向对象程序设计及其实现方法 119
5.1.1 面向对象程序设计的特点 119
5.1.2 面向对象思想解决问题的过程 120
5.1.3 定义类 121
5.1.4 关键字this 127
案例 128
26.创建抽象描述矩形的类 128
27.创建并应用People类 129
28.创建并应用Computer类 130
思考与练习5-1 132
5.2 类的继承和多态 133
5.2.1 类的继承 133
5.2.2 关键字super 135
5.2.3 类的多态 136
案例 136
29.创建并应用Shape类以及子类 136
30.输出图书销售量 139
31.统计学生考试成绩 141
思考与练习5-2 143
5.3 包和访问控制符 145
5.3.1 包 145
5.3.2 访问控制符 147
案例 148
32.修饰符的作用 148
思考与练习5-3 151
5.4 对象数组和接口 151
5.4.1 对象数组 151
5.4.2 接口 152
案例 155
33.使用接口输出费波纳契数列前15位 155
34.使用接口计算数列的和 156
思考与练习5-4 158
第6章 图形用户界面设计与实现 160
6.1 初识图形用户界面 160
6.1.1 图形用户界面和AWT简介 160
6.1.2 基本组件 161
案例 164
35.求两个数的乘积 164
36.模拟彩票系统 165
37.客户信息登记界面 167
思考与练习6-1 168
6.2 编辑文字和绘制图形 169
6.2.1 设置颜色 169
6.2.2 编辑文字 171
6.2.3 绘制图形 172
6.2.4 repaint()方法 174
案例 175
38.简易“字体”对话框 175
39.绘制卡通脸 176
40.绘制多种图案 177
思考与练习6-2 178
6.3 认识Swing 180
6.3.1 什么是Swing 180
6.3.2 JApplet类和JFrame类的作用 182
6.3.3 最常用的Swing组件 184
6.3.4 界面布局管理器 185
案例 189
41.绘制sin()函数图案 189
42.彩色条纹窗体 190
43.手机键盘 191
思考与练习6-3 192
6.4 Swing中的组件 193
6.4.1 基本的Swing组件 193
6.4.2 具有选择功能的Swing组件 194
6.4.3 BorderFactory类 197
案例 200
44.模拟用户登录界面 200
45.简易“格式”工具栏 203
46.客户信息登记界面 204
47.模拟网上购物界面 206
思考与练习6-4 209
6.5 事件处理 211
6.5.1 事件的概念 211
6.5.2 键盘事件 212
6.5.3 鼠标事件 213
案例 214
48.使用键盘移动按钮 214
49.跟踪鼠标的移动 215
50.简易“画图”软件 217
思考与练习6-5 220
6.6 更多常用组件和音频的使用 221
6.6.1 菜单组件 221
6.6.2 对话框 223
6.6.3 使用音频文件 226
案例 226
51.展示各类菜单组件 226
52.播放音乐 229
53.测试你适合的职业 231
思考与练习6-6 233
第7章 异常处理和多线程 234
7.1 异常处理 234
7.1.1 常见错误 234
7.1.2 异常处理 237
案例 240
54.处理除数为零的异常 240
55.应用自定义异常类 241
思考与练习7-1 242
7.2 多线程 242
7.2.1 多线程的基本概念 243
7.2.2 线程的状态和优先级 244
7.2.3 多线程的控制和调度 245
案例 247
56.两个线程 247
57.移动的标语 248
58.模拟存取款的处理过程 250
思考与练习7-2 252
附录 参考答案 254