第1章 Java概述 1
1.1 了解Java 1
1.1.1 Java的诞生和发展 1
1.1.2 Java语言的特点和优势 3
1.1.3 Java的核心技术 6
1.2 搭建Java开发环境 7
1.2.1 J2SE的安装 7
1.2.2 设置J2SE的环境变量 8
1.2.3 编写Java程序 9
1.3 Eclipse集成化开发工具 11
1.3.1 基本概念 11
1.3.2 安装Eclipse 12
1.3.3 使用Eclipse编写Java应用程序 13
1.4 上机实战 14
1.5 小结 15
1.6 习题 15
第2章 Java语言基础 17
2.1 标识符和关键字 17
2.1.1 标识符 17
2.1.2 Java关键字 18
2.2 注释和分隔符 19
2.3 数据类型、常量和变量 20
2.3.1 数据类型 20
2.3.2 常量和变量 24
2.4 运算符 25
2.4.1 算术运算符 25
2.4.2 关系运算符 26
2.4.3 逻辑运算符 28
2.4.4 位运算符 29
2.4.5 复杂赋值运算符 31
2.4.6 条件运算符 31
2.4.7 instanceof运算符 32
2.4.8 运算符优先级 32
2.5 控制语句 33
2.5.1 块作用域 34
2.5.2 if语句 34
2.5.3 switch语句 35
2.5.4 循环控制 36
2.5.5 流程控制 38
2.6 上机实战 41
2.7 小结 44
2.8 习题 45
第3章 面向对象的程序设计 47
3.1 面向对象概念 47
3.1.1 面向对象介绍 47
3.1.2 面向对象的特点 48
3.2 对象 49
3.2.1 对象的创建 51
3.2.2 对象的使用 52
3.3 类 53
3.3.1 类的定义 53
3.3.2 类的成员变量 54
3.3.3 类的方法 58
3.3.4 定义和使用构造方法 63
3.4 接口 64
3.4.1 接口的定义 65
3.4.2 接口的实现 65
3.4.3 接口的使用 66
3.4.4 回调 68
3.5 内部类 70
3.5.1 内部类介绍 70
3.5.2 内部类的使用 71
3.6 抽象类 73
3.6.1 抽象类概念 73
3.6.2 接口和抽象类 75
3.7 包 78
3.7.1 包的创建 78
3.7.2 包的导入 78
3.8 上机实战 79
3.9 小结 81
3.10 习题 81
第4章 继续与多态 83
4.1 继承 83
4.1.1 属性和方法的继承 84
4.1.2 动态绑定 85
4.2 继承的实现 85
4.2.1 成员变量的继承和隐藏 85
4.2.2 方法继承、方法覆盖和方法隐藏 86
4.2.3 super关键字 88
4.2.4 final关键字 90
4.3 方法和成员变量的权限控制 91
4.3.1 public 91
4.3.2 protected 92
4.3.3 private 94
4.3.4 存取方法 95
4.4 多态 96
4.4.1 多态性的概念 96
4.4.2 覆盖实现多态性 97
4.4.3 重载实现多态性 98
4.5 Object类 100
4.5.1 toString()方法 100
4.5.2 equals()方法 102
4.5.3 Object与其他类型的转换 105
4.6 上机实战 106
4.7 小结 108
4.8 习题 108
第5章 字符串操作 110
5.1 字符和字符串 110
5.1.1 String类的构造函数 110
5.1.2 字符串比较 111
5.1.3 hashCode()方法 112
5.1.4 定位字符和子串 113
5.1.5 抽取子串 114
5.1.6 字符串修改 115
5.1.7 String类的其他方法 115
5.2 StringBuffer类 116
5.2.1 StringBuffer类的构造函数 116
5.2.2 length()、capacity()、setLength()和ensureCapacity()方法 116
5.2.3 charAt()、setCharAt()、getChars()和reverse()方法 117
5.2.4 append()方法 118
5.2.5 插入和删除 119
5.3 StringTokenizer类 120
5.3.1 StringTokenizer类的构造函数 120
5.3.2 StringTokenizer类的常用方法 120
5.3.3 改进的StringTokenizer类:BreakIterator类 122
5.4 使用正则表达式 124
5.4.1 正则表达式 125
5.4.2 Pattern类 128
5.4.3 Matcher类 129
5.4.4 操作符优先级 129
5.4.5 正则表达式总结 130
5.5 上机实战 132
5.6 小结 134
5.7 习题 134
第6章 Java的数据结构 136
6.1 数组 136
6.1.1 一维数组 137
6.1.2 多维数组 139
6.2 集合简介 141
6.2.1 Java集合接口 141
6.2.2 Java集合实现 142
6.2.3 Java集合的发展历史 142
6.3 集合的使用 143
6.3.1 Collection接口 143
6.3.2 Set接口 145
6.3.3 List接口 151
6.3.4 Map接口 156
6.4 上机实战 162
6.5 小结 163
6.6 习题 163
第7章 异常处理 165
7.1 异常处理概述 165
7.2 程序错误与处理 165
7.2.1 程序错误、发现时刻及错误处理原则 166
7.2.2 Java的错误和异常 166
7.3 Java的异常处理 166
7.3.1 异常类说明 167
7.3.2 错误分类 168
7.3.3 异常处理机制 169
7.3.4 异常处理语句 170
7.3.5 声明异常 173
7.3.6 抛出异常 174
7.3.7 自定义异常类 176
7.4 上机实战 177
7.5 小结 179
7.6 习题 179
第8章 多线程 181
8.1 多线程概述 181
8.1.1 什么是多线程 181
8.1.2 为何要使用多线程 182
8.2 建立Java线程 182
8.2.1 计时器 182
8.2.2 Thread类 184
8.2.3 Runnable接口 190
8.3 操作系统中的进程和线程 192
8.3.1 进程 192
8.3.2 线程 192
8.4 线程优先级 193
8.4.1 线程优先级和线程调度 193
8.4.2 用户线程和守护线程 196
8.5 上机实战 197
8.6 小结 201
8.7 习题 202
第9章 图形用户界面 204
9.1 Java图形用户界面初步 204
9.1.1 Java图形用户界面概述 204
9.1.2 AWT图形用户界面组件概述 206
9.2 Swing组件 209
9.2.1 Swing组件关系概述 209
9.2.2 文本框 209
9.2.3 按钮 210
9.2.4 下拉列表组件 216
9.3 上机实战 216
9.4 小结 219
9.5 习题 219
第10章 输入/输出流和文件操作 221
10.1 文件的概念 221
10.2 字节输入/输出流类 223
10.2.1 字节输入流类(InputStream类) 223
10.2.2 字节输出流类(OutputStream类) 224
10.2.3 文件字节输入/输出流类(FileInputStream/FileOutputStream类) 224
10.2.4 对象输入/输出流类(ObjectOutputStream和ObjectInputStream类) 226
10.3 字符输入/输出流类 228
10.3.1 字符输入/输出流抽象类(Reader和Writer类) 228
10.3.2 文件字符输入/输出流类(FileReader/FileWriter类) 230
10.3.3 字符缓冲流类(BufferedReader类) 231
10.4 文件操作类 232
10.4.1 文件类(File类) 232
10.4.2 文件过滤器接口 234
10.4.3 随机存取文件类 235
10.5 上机实战 237
10.6 小结 238
10.7 习题 239
第11章 Java与数据库的连接 241
11.1 JDBC的概念 241
11.2 数据库驱动程序 242
11.3 JDBC-ODBC桥 242
11.3.1 连接一个ODBC数据源 243
11.3.2 读取数据 246
11.4 JDBC驱动 248
11.5 Statement和PreparedStatement 250
11.6 上机实战 251
11.7 小结 255
11.8 习题 256
第12章 综合实例 258
12.1 学生管理系统 258
12.1.1 系统应用背景 258
12.1.2 系统的功能 258
12.2 系统设计 259
12.2.1 系统结构 259
12.2.2 教师管理部分 259
12.2.3 学生管理部分 262
12.2.4 详细设计 264
12.3 数据库设计 265
12.4 程序实现 267
12.5 实例拓展 279
主要参考文献 280