第1章 认识Java语言 1
1.1 Java简介 1
1.1.1 Java是什么 1
1.1.2 Java语言的应用前景 2
1.1.3 Java语言的特点 2
1.1.4 Java虚拟机 3
1.1.5 Java的程序类型 4
1.1.6 Java的开发运行环境 4
1.2 搭建Java开发环境 4
1.2.1 JDK下载 4
1.2.2 JDK安装 5
1.2.3 配置环境变量 6
1.3 编写第一个Java程序 7
复习与训练 10
第2章 Java基础知识 11
案例1 员工个人信息 11
2.1 数据类型 12
2.2 变量及赋值 15
2.3 基本语言符号 19
2.3.1 标识符 19
2.3.2 关键字和保留字 20
2.4 类型转换 22
案例2 球体的体积 25
2.5 常量 26
案例3 利用海伦公式计算三角形面积 26
2.6 运算符和表达式 27
2.6.1 算术运算符 28
2.6.2 关系运算符 29
2.6.3 逻辑运算符 31
2.6.4 赋值运算符 32
2.6.5 三元运算符 32
2.6.6 表达式数据类型 33
复习与训练 34
第3章 控制流语句 36
案例4 闰年的判断 36
3.1 顺序与分支结构 37
案例5 水仙花数 41
3.2 循环结构 43
3.2.1 循环语句 43
3.2.2 跳转语句 45
复习与训练 46
第4章 数组 48
案例6 评委打分 48
4.1 一维数组 50
4.1.1 数组的定义与创建 50
4.1.2 数组的内存模型 51
4.1.3 数组的遍历 51
4.1.4 数组的复制 52
4.1.5 数组排序 52
案例7 矩阵的乘法 53
4.2 多维数组 55
4.2.1 二维数组 55
4.2.2 多维数组 57
案例8 字符串的使用 58
4.3 字符串与String类 60
4.4 数组工具类 62
复习与训练 64
第5章 Java面向对象基础 65
案例9 学生成绩榜 65
5.1 类的定义 69
5.2 实例变量 74
5.2.1 构造器 74
5.2.2 实例变量 75
5.3 方法的定义 76
5.3.1 方法的使用 76
5.3.2 返回值 78
5.4 对象的创建与使用 78
5.4.1 new操作符 78
5.4.2 this关键字 81
5.5 方法重载 82
案例10 单子类(单例模式) 84
5.6 静态变量与静态方法 85
复习与训练 88
第6章 面向对象高级特性 91
案例11 大象放冰箱(模板模式) 91
6.1 继承 94
6.1.1 继承的特点 94
6.1.2 子类实例化过程 96
6.1.3 this与super 97
6.2 方法覆盖 98
6.3 final 98
6.4 包 99
6.4.1 定义包 100
6.4.2 导入包 100
6.4.3 访问控制符 101
6.5 封装 102
6.6 多态 103
6.6.1 多态表现形式 103
6.6.2 对象的归属 105
6.7 抽象类 105
案例12 USB设备的执行过程 108
6.8 接口 110
6.8.1 接口的基本语法 110
6.8.2 接口的继承 111
6.9 内部类 116
6.10 泛型 119
6.10.1 规则和限制 120
6.10.2 逐渐深入泛型 122
复习与训练 124
第7章 Java常用类库 129
案例13 企业员工管理 129
7.1 lang包 136
7.1.1 包装类 136
7.1.2 StringBuffer类 138
7.1.3 Math类 139
7.1.4 Class类 140
7.1.5 Object类 141
7.2 util包 148
7.2.1 Date类 148
7.2.2 Calendar类 150
7.2.3 Random类 151
7.3 单列集合Collection接口、List接口、Set接口、集合工具类Collections 152
7.3.1 集合框架概述 152
7.3.2 Collection接口 153
7.3.3 List接口 153
7.3.4 Set接口 157
7.3.5 Collections 159
7.4 键值双列集合Map 161
7.5 泛型的高级应用 164
案例14 用Java程序实现文件复制 165
7.6 File类 169
7.7 字节流InputStream抽象类、OutputStream抽象类 171
7.8 字符流Reader、Writer 173
复习与训练 177
第8章 异常处理 178
案例15 论坛用户注册 178
8.1 异常简介 181
8.2 异常的分类 182
8.3 异常的处理 184
复习与训练 186
第9章 GUI编程 187
案例16 计算器 187
9.1 AWT(Abstract Window Toolkit) 193
9.1.1 容器(Container) 194
9.1.2 布局管理器 194
9.1.3 Component 196
案例17 图片浏览器 204
9.2 AWT事件处理机制 210
案例18 实体类代码生成器 215
9.3 Swing 224
9.3.1 JFrame 225
9.3.2 面板JPanel 226
9.3.3 Swing常用组件 226
复习与训练 230
第10章 多线程与网络编程 231
案例19 英译汉考试系统 232
10.1 多线程 240
10.1.1 多线程的概念 240
10.1.2 线程的创建 241
10.1.3 线程的状态与生命周期 242
10.1.4 线程休眠和线程中断 243
10.1.5 多线程同步 243
案例20 C/S结构聊天室 248
10.2 网络编程 252
10.2.1 URL通信 252
10.2.2 Socket通信机制 252
复习与训练 254
参考文献 255