第1章 Java概述 1
简介 1
1.1 Java的发展简介 1
1.2 Java的特点 2
1.3 开发工具包JDK及其配置 5
1.4 编写简单的Java程序 9
1.4.1 一个最简单的Java程序 9
1.4.2 编译和运行Java程序 10
1.5 Java的开发环境 11
1.6 JCreator的使用 12
总结 14
上机实验 14
课后练习 15
第2章 Java语法基础 16
简介 16
2.1 标识符 16
2.1.1 标识符的定义 16
2.1.2 标识符的组成规则 17
2.1.3 分隔符 17
2.2 关键字 18
2.3 数据类型、变量与常量 18
2.3.1 数据类型 18
2.3.2 基本数据类型 18
2.3.3 复合数据类型 19
2.3.4 类型转换 20
2.3.5 常量 22
2.3.6 变量 23
2.4 Unicode 25
2.4.1 汉字字符集 25
2.4.2 Unicode的定义与特点 25
2.5 运算符 26
2.5.1 算术运算符 26
2.5.2 关系运算符 28
2.5.3 逻辑运算符 29
2.5.4 位运算符 30
2.5.5 位移运算符 32
2.5.6 条件运算符 34
2.5.7 运算符的优先级与结合性 34
2.6 表达式(Expression) 35
2.6.1 算术表达式 35
2.6.2 关系表达式 36
2.6.3 逻辑表达式 36
2.6.4 赋值表达式 37
2.6.5 复合赋值运算表达式 37
2.7 流程控制 37
2.7.1 条件选择语句 37
2.7.2 switch...case多分支语句 41
2.7.3 循环控制语句 44
2.8 数组 51
2.8.1 数组的概念、特征与分类 51
2.8.2 一维数组 51
2.8.3 多维数组 57
2.9 命令行参数 59
2.9.1 命令行参数的定义与使用 59
2.9.2 命令行参数的转换 60
总结 61
上机实验 61
课后练习 61
第3章 面向对象的实现 63
简介 63
3.1 类与对象 63
3.1.1 对象及对象的引用 64
3.1.2 类与对象的关系 65
3.1.3 抽象 66
3.1.4 封装 67
3.2 在Java中实现类 68
3.2.1 类中的数据成员 68
3.2.2 类中的方法 71
3.2.3 Java中类的声明 78
3.2.4 使用类的对象实例 81
3.2.5 类的初始化与垃圾回收 82
3.2.6 this关键字 88
3.3 访问修饰符和隐藏实现 90
3.3.1 包 90
3.3.2 访问控制修饰符 92
3.3.3 再谈封装 95
3.4 继承 97
3.4.1 软件复用与继承的概念 98
3.4.2 继承的实现:父类与子类 99
3.4.3 继承中的初始化与收尾 102
3.4.4 继承中成员访问和继承的根类 105
3.5 多态性 107
3.5.1 方法重载(编译时多态) 109
3.5.2 方法重定义(运行时多态) 112
3.6 方法修饰符 116
3.6.1 static修饰符 116
3.6.2 final修饰符 121
3.6.3 abstract修饰符 126
3.7 接口 127
3.7.1 接口的定义 128
3.7.2 接口的实现 129
3.7.3 引用接口 132
3.7.4 接口的继承 133
3.8 嵌套类 135
3.8.1 成员类 136
3.8.2 局部类 138
3.8.3 匿名类 139
3.9 Java中的枚举类型 140
总结 143
上机实验 144
课后练习 145
第4章 异常和断言 153
简介 153
4.1 异常 153
4.2 异常处理 55
4.2.1 try...catch块 155
4.2.2 finally块 158
4.2.3 多重catch块 159
4.2.4 嵌套try...catch块 163
4.2.5 使用throw显式引发异常 165
4.2.6 使用throws回避异常 166
4.3 用户自定义异常 167
4.4 检验异常和非检验异常 168
4.5 断言 169
总结 172
上机实验 172
课后练习 173
第5章 java.lang包和字符串 177
简介 177
5.1 Object类 177
5.2 包装类 181
5.2.1 数值类型包装类 181
5.2.2 Boolean类 183
5.2.3 Character类 183
5.3 Math类 185
5.4 System类 186
5.5 字符串 188
5.5.1 String类 188
5.5.2 StringBuffer类 194
总结 196
上机实验 196
课后练习 197
第6章 java.util包和集合框架 199
简介 199
6.1 日期与时间类 199
6.1.1 Date类 199
6.1.2 日历类Calendar 200
6.2 随机数类Random 203
6.3 集合框架 205
6.3.1 Collection接口 205
6.3.2 Iterator接口 206
6.3.3 List接口 207
6.3.4 向量类Vector 208
6.3.5 栈类Stack 210
6.3.6 数组列表类ArrayList 211
6.3.7 链表类LinkedList 212
6.3.8 Set接口 213
6.3.9 HashSet类 213
6.3.10 TreeSet类 214
6.3.11 Map接口 215
6.3.12 HashMap 216
6.3.13 TreeMap 217
6.3.14 Collections类 218
总结 220
上机实验 220
课后练习 220
第7章 java.io包和输入输出 222
简介 222
7.1 File类 222
7.1.1 File类构造方法 223
7.1.2 File类常用方法 223
7.2 流 225
7.2.1 流的概念 225
7.2.2 字节流 226
7.2.3 字符流 227
7.3 使用字节流进行文件读/写 227
7.3.1 InputStream类和OutputStream类 227
7.3.2 FileInputStream类和FileOutputStream类 231
7.4 使用字符流进行文件读/写 234
7.4.1 基类Reader和Writer类 234
7.4.2 FileReader类和FileWriter类 237
7.4.3 InputStreamReader类和OutputStreamWriter类 239
7.4.4 BufferedReader类和BufferedWriter类 242
7.4.5 PrintWriter类 245
7.5 过滤流 246
7.5.1 FilterInputStream类和FilterOutputStream类 247
7.5.2 DataInputStream类和DataOutputStream类 247
7.5.3 BufferedInputStream类和BufferedOutputStream类 251
7.5.4 LineNumberInputStream类 253
7.5.5 PushbackInputStream类 255
总结 256
上机实验 257
课后练习 257
附录A 综合复习题 259
参考文献 282