目 录
第1章 Java概述 1
1.1 编程语言简介 2
1.2 Java简介 2
1.3 搭建Java开发环境 3
1.3.1 下载JDK 3
1.3.2 安装JDK 4
1.3.3 配置环境变量 5
1.3.4 测试 7
1.4 第一个Java程序 7
1.5 Java程序的运行 8
本章小结 10
习题 10
第2章 Java语言基础 11
2.1 标识符 12
2.1.1 标识符概述 12
2.1.2 关键字 12
2.1.3 分隔符 13
2.1.4 注释 14
2.2 数据类型 14
2.2.1 整数类型 14
2.2.2 浮点数据类型 16
2.2.3 布尔数据类型 17
2.2.4 字符型 17
2.2.5 转义字符 17
2.2.6 各类型数据间的相互转换 18
2.3 运算符 19
2.3.1 赋值运算符 19
2.3.2 算术运算符 20
2.3.3 关系运算符 21
2.3.4 逻辑运算符 22
2.3.5 条件运算符 23
2.3.6 位运算符 23
2.3.7 运算符的优先级 25
2.4 Java程序的流程控制语句 26
2.4.1 顺序语句 26
2.4.2 条件语句 26
2.4.3 循环语句 29
2.4.4 跳转语句 32
2.5 数组 33
2.5.1 一维数组 34
2.5.2 多维数组 37
2.6 Java标准输入与输出 39
2.6.1 标准输出流System.out和标准
输入流System.in 39
2.6.2 Scanner类 39
2.7 案例实训:求斐波那契数列 40
本章小结 42
习题 42
第3章 面向对象编程 45
3.1 面向对象概述 46
3.2 面向对象程序设计的基本特征 46
3.3 Java类与对象 47
3.3.1 Java类的定义 47
3.3.2 构造方法 50
3.3.3 Java对象的创建和构造方法 50
3.4 包 51
3.4.1 包的定义 52
3.4.2 带包类的编译和运行 53
3.5 方法的参数传递 54
3.6 案例实训:模拟银行存/取款程序 56
本章小结 59
习题 59
第4章 继承 61
4.1 继承的概念 62
4.2 Java中的继承 62
4.3 this与super 64
4.3.1 this的用法 64
4.3.2 super的用法 66
4.4 继承时的覆盖与隐藏 67
4.5 访问控制符 69
4.5.1 定义类的访问权限 70
4.5.2 类的成员访问权限 70
4.6 类变量、实例变量与局部变量 73
4.6.1 成员变量 73
4.6.2 局部变量 74
4.7 实例方法与类方法 75
4.8 static代码块 76
4.9 final修饰符 76
4.9.1 final修饰类变量 77
4.9.2 final修饰实例变量 77
4.9.3 final修饰局部变量 78
4.9.4 final修饰成员方法 78
4.9.5 final修饰类 78
4.10 对象的初始化顺序 79
4.11 案例实训:银行账户功能扩展 83
本章小结 85
习题 86
第5章 抽象类和接口 87
5.1 抽象类 88
5.1.1 抽象类的定义 88
5.1.2 向上转型 90
5.2 接口 92
5.2.1 接口的定义 92
5.2.2 接口的实现 93
5.2.3 抽象类和接口的区别 94
5.3 多态 95
5.4 内部类 96
5.4.1 实例成员内部类 97
5.4.2 静态内部类 98
5.4.3 局部内部类 99
5.4.4 匿名内部类 100
5.5 面向接口编程 101
5.6 案例实训:模拟读写数据 101
本章小结 104
习题 104
第6章 异常处理 105
6.1 异常概述 106
6.1.1 什么是异常 106
6.1.2 Java中常用的异常 106
6.2 Java的异常处理机制 108
6.2.1 try-catch-finally语句 109
6.2.2 异常的抛出及声明 110
6.3 自定义异常 112
6.4 断言 114
6.5 案例实训:学生成绩管理 115
本章小结 118
习题 119
第7章 常用类库 121
7.1 定义字符串的String类 122
7.2 StringBuffer类 126
7.3 StringTokenizer类 127
7.4 日期类 128
7.5 包装类 131
7.6 集合类 135
7.6.1 集合简介 135
7.6.2 Collection接口 136
7.6.3 Set接口 136
7.6.4 List接口 137
7.6.5 Iterator接口 140
7.6.6 ListIterator接口 140
7.6.7 集合遍历的方法 141
7.6.8 Map集合 142
7.6.9 Comparable和Comparator
接口 144
7.7 案例实训:为学生成绩管理程序增加
功能 146
本章小结 149
习题 149
第8章 流与文件操作 151
8.1 标准文件类File 152
8.1.1 File类的构造方法 152
8.1.2 File类的常用成员方法 153
8.2 输入流与输出流 154
8.2.1 流的基本概念 154
8.2.2 字节流 155
8.2.3 字符流 165
8.2.4 转换流InputStreamReader
和OutputStreamWriter类 169
8.3 随机访问类RandomAccessFile 172
8.4 案例实训:为学生成绩管理程序增加
持久化功能 174
本章小结 176
习题 177
第9章 泛型 179
9.1 为什么需要泛型 180
9.2 泛型类 181
9.3 泛型数组 184
9.4 泛型成员的使用 185
9.5 限制泛型类的上界 186
9.6 泛型类的继承 189
9.7 泛型接口 190
9.8 泛型方法 192
9.9 泛型通配符 194
9.10 类型擦除 198
9.11 案例实训:单链表 200
本章小结 204
习题 204
第10章 图形界面 205
10.1 引言 206
10.2 AWT和Swing 206
10.2.1 JFrame 208
10.2.2 JPanel 209
10.2.3 JLabel 210
10.2.4 JTextField 210
10.2.5 JButton 211
10.2.6 JPassword 211
10.2.7 JTextArea 212
10.2.8 JRadioButton
和ButtonGroup 213
10.2.9 JCheckBox 214
10.2.10 JComboBox 214
10.2.11 JScrollPane 215
10.2.12 Color 216
10.2.13 Font 217
10.3 布局管理器 217
10.3.1 FlowLayout 217
10.3.2 BorderLayout 219
10.3.3 GridLayout 220
10.3.4 CardLayout 222
10.3.5 空布局 224
10.4 事件处理 226
10.4.1 Java的事件处理机制 226
10.4.2 事件处理程序的编写 227
10.4.3 常用事件 232
10.4.4 监听器接口适配器类 240
10.5 对话框 241
10.6 菜单 244
10.7 案例实训:日记本 246
本章小结 253
习题 253
第11章 多线程 255
11.1 线程的概念 256
11.2 线程的创建 256
11.2.1 通过继承Thread类来建立
线程类 256
11.2.2 通过实现Runnable接口的
方法来实现线程 259
11.2.3 Thread类的用法 260
11.3 线程的生命周期 261
11.4 线程的调度与控制 262
11.4.1 线程的优先级 263
11.4.2 线程的控制方法 264
11.5 线程同步 268
11.5.1 线程加锁 269
11.5.2 死锁 271
11.5.3 线程同步案例 273
11.6 案例实训:摇号程序 276
本章小结 278
习题 278
第12章 网络编程 279
12.1 http的基本概念 280
12.2 URL和URLConnection类 280
12.2.1 URL类 280
12.2.2 URLConnection类 283
12.2.3 InetAddress类 284
12.3 TCP Socket 286
12.3.1 Socket类 287
12.3.2 ServerSocket类 289
12.4 数据报 300
12.4.1 DatagramPacket
和DatagramSocket类 300
12.4.2 图形界面聊天案例 304
12.5 案例实训:编写一个简易的Web
服务器 307
本章小结 311
习题 311
第13章 JDBC 313
13.1 JDBC简介 314
13.1.1 JDBC的概念 314
13.1.2 JDBC 3.0 API简介 315
13.1.3 JDBC驱动程序类型 317
13.2 使用JDBC 319
13.2.1 准备工作 319
13.2.2 使用JDBC的一般步骤 320
13.3 JDBC进阶 324
13.3.1 数据库帮助类
DBConnection 324
13.3.2 使用PreparedStatement 325
13.3.3 调用存储过程 327
13.4 JDBC事务 329
13.4.1 事务的概念 329
13.4.2 JDBC事务管理 329
13.5 JDBC 4.x 332
13.6 案例实训:基于Eclipse项目实现
增、删、改、查 333
本章小结 336
习题 337
参考文献 338