第1章Java语言概述 1
1.1 Java语言简介 2
1.1.1 Java语言的历史 2
1.1.2 Java语言与C+++语言的区别 3
1.1.3 Java语言与Internet的关系 4
1.2 Java语言的特点 4
1.2.1面向对象 5
1.2.2平台无关性 5
1.2.3安全稳定 5
1.2.4易于学习 5
1.3 Java虚拟机 6
1.3.1什么是Java虚拟机 6
1.3.2 Java虚拟机体系结构 6
1.4 Java平台 9
1.4.1 Java常用包 9
1.4.2 Java工具 10
1.5 Java类库 13
1.6 Java执行环境 13
习题 14
上机实训 15
第2章Java面向对象编程基础 16
2.1对象的定义和引用 17
2.1.1构造方法 17
2.1.2对象的创建 18
2.1.3对象的使用 19
2.1.4对象的销毁 19
2.2案例分析:银行账户对象的创建 20
2.3静态成员与实例成员 21
2.3.1静态属性与实例属性 21
2.3.2静态方法与实例方法 22
2.3.3静态成员与实例成员的特征 22
2.3.4关键字this的使用 24
2.4方法的重载 25
2.4.1成员方法的重载 25
2.4.2构造方法的重载 25
2.5案例分析:银行账户类构造方法的重载 26
2.6类的封装和访问控制 28
2.6.1类的封装 28
2.6.2访问控制 28
2.7案例分析:简单的银行账户管理程序 31
习题 36
上机实训 39
第3章 标识符、关键字与类型 40
3.1 Java和Unicode 41
3.2标识符 41
3.3关键字 41
3.4注释和分隔符 42
3.5常量和变量 43
3.5.1常量 43
3.5.2变量 43
3.6基本数据类型 44
3.6.1布尔型 44
3.6.2整型 44
3.6.3浮点型 45
3.6.4字符型 46
3.7字符串类 47
3.7.1 String类 47
3.7.2 StringBuffer类 48
习题 48
上机实训 49
第4章 表达式与运算符 50
4.1表达式 51
4.2运算符 51
4.2.1算术运算符 51
4.2.2关系运算符 52
4.2.3逻辑运算符 52
4.2.4位运算符 53
4.2.5赋值运算符 53
4.2.6条件运算符 53
4.2.7其他运算符 54
4.3运算符的优先级 54
4.4数据类型转换 55
4.4.1自动类型转换 55
4.4.2强制类型转换 56
习题 56
上机实训 57
第5章Java语句 58
5.1语句、空语句和块 59
5.2表达式语句 59
5.3选择语句 60
5.3.1 if语句 61
5.3.2 switch语句 64
5.4循环语句 66
5.5 break语句、continue语句和标号 70
5.6 return语句和System.exit()方法 73
5.6.1 return语句 73
5.6.2案例分析:return语句实例 73
5.6.3 System.exit()方法 74
5.6.4案例分析: System.exit()方法实例 75
5.6.5案例分析:综合实例 75
5.7注释语句和javadoc 77
5.8异常处理 80
5.8.1捕获异常 81
5.8.2抛出异常 86
习题 89
上机实训 89
第6章 数组 90
6.1一维数组 91
6.1.1数组的声明 91
6.1.2数组的创建 91
6.1.3数组的访问 93
6.2多维数组 94
6.2.1二维数组声明与初始化 94
6.2.2二维数组元素的引用 95
6.2.3案例分析:二维数组的使用 96
6.3字符数组 97
6.3.1字符数组与字符串 97
6.3.2字符串 97
6.3.3字符串数组 98
6.4数组作为方法的参数 99
习题 99
上机实训 100
第7章 类和对象的扩展 102
7.1类的继承 103
7.1.1继承的引入 103
7.1.2子类的定义和使用 104
7.1.3成员变量的隐藏 105
7.1.4方法的覆盖 105
7.1.5 super关键字 107
7.1.6 final关键字 108
7.2案例分析:VIP银行账户类的创建 108
7.3多态 112
7.3.1多态的概念 112
7.3.2向上转型 112
7.3.3向下转型 113
7.4抽象类 114
7.4.1抽象方法的声明 114
7.4.2抽象类的声明 114
7.4.3抽象类的使用 115
7.5内部类与外部类 116
7.6 Java异常处理机制 117
7.6.1异常处理概述 118
7.6.2异常分类 119
7.6.3异常的处理 120
7.6.4自定义异常类 122
习题 124
上机实训 125
第8章 接口 126
8.1接口能够解决的问题 127
8.1.1接口的概念 127
8.1.2定义接口 129
8.1.3接口的特点和实现 131
8.2 Comparable接口 135
8.3回调 138
8.3.1回调的概念 138
8.3.2 Java语言的回调(callback)机制 139
习题 141
上机实训 141
第9章Java包与可视性 142
9.1 Java包的用途 143
9.1.1包的建立方法 143
9.1.2包的使用方法 143
9.1.3包的访问权限 144
9.1.4包的命名方式 144
9.2访问包成员 145
9.3源文件的布局 146
9.4案例分析:classpath参数的使用 148
9.5嵌套类 151
9.6 Java API包 154
9.6.1常用的Java API包 154
9.6.2 Character类 155
9.7案例分析:改进的银行账户管理程序 159
习题 163
上机实训 164
第10章GUI图形用户界面 165
10.1 Swing概述 166
10.2 Swing容器 171
10.2.1 JFrame框架 171
10.2.2 JPanel面板 173
10.2.3 JDialog对话框 175
10.2.4 Swing其他容器 176
10.2.5案例分析:常用容器综合实例 177
10.3常用Swing组件 179
10.3.1 JLabel标签组件 180
10.3.2 JTextField文本框和JTextArea文本区 181
10.3.3 JButton按钮组件 183
10.3.4 JCheckBox复选框组件和JRadioButton单选按钮 184
10.3.5 JList列表框组件 185
10.3.6 JComboBox下拉 列表框组件 186
10.3.7 JMenu菜单组件 187
10.3.8案例分析:常用Swing组件综合实例 191
10.4 GUI布局管理器 196
10.4.1 FlowLayout流式布局管理器 197
10.4.2 BorderLayout边界布局管理器 198
10.4.3 CardLayout卡片布局管理器 199
10.4.4 GridLayout网格布局管理器 201
10.4.5 GridBagLayout网格包布局管理器 203
10.4.6 BoxLayout盒式布局管理器 203
10.4.7案例分析:布局管理器综合实例 204
10.5事件处理模型 207
10.5.1事件处理机制 207
10.5.2事件处理类 210
10.5.3事件适配器 213
习题 214
上机实训 216
第11章Java中的鼠标事件和键盘事件 217
11.1 Java的事件处理模型 218
11.1.1 Java的事件处理模式 218
11.1.2常用的监听器接口 218
11.2使用MouseListener接口处理鼠标事件 220
11.2.1 MouseListener接口基础知识 220
11.2.2案例分析:MouseListener接口实例 221
11.3使用MouseMotionListener接口处理鼠标事件 222
11.3.1 MouseMotionListener接口基础知识 222
11.3.2案例分析:MouseMotionListener接口实例 222
11.4控制鼠标的指针形状 224
11.4.1鼠标控制基础知识 224
11.4.2案例分析:鼠标控制实例 224
11.5键盘事件 225
11.5.1键盘事件基础知识 225
11.5.2案例分析:键盘事件实例 227
11.6案例分析:键盘和鼠标事件类综合实例 229
习题 232
上机实训 233
第12章Java中的输入/输出 234
12.1流的基本概念 235
12.2字节流 236
12.3字符流 237
12.4 File类 239
12.4.1 File类的构造函数 239
12.4.2案例分析:File类实例 240
12.5 System.in和System.out对象 241
12.6 FilelnputStream类和FileOutputStream类 243
12.7 FileReader类和FileWriter类 244
12.8过滤流 245
12.9文件的随机访问 247
12.9.1 RandomAccessFile类 247
12.9.2案例分析:RandomAccessFile类实例 248
习题 249
上机实训 250
第13章 线程 251
13.1什么是线程 252
13.1.1线程的概念 252
13.1.2生命周期 253
13.2 Java线程机制 254
13.2.1 Thread类创建线程 255
13.2.2案例分析:线程实例 256
13.2.3 Runnable接口创建线程 258
13.2.4线程优先级和调度 260
13.2.5线程组 264
13.3线程同步与通信 265
13.3.1线程同步 265
13.3.2线程通信wait()和 notify() 266
13.3.3案例分析:对共享队列数据读写 267
13.3.4死锁 269
习题 270
上机实训 271
第14章Java中的网络编程 272
14.1 Java与网络 273
14.1.1网络 273
14.1.2 Java中的网络功能 276
14.2 IP与URL 276
14.21.InetAddress类 277
14.2.2 URL和URLConnection 279
14.3 TCP服务器/客户端Socket 282
14.3.1服务器端ServerSocket 283
14.3.2客户端Socket 284
14.3.3实例 286
14.4 UDP服务器/客户端Datagram 288
14.4.1 DatagramPacket 288
14.4.2 DatagramSocket 289
14.4.3实例 289
14.4.4组播套接字MulticastSocket 292
14.5综合案例 293
习题 301
上机实训 301
第15章Java与数据库(JDBC) 302
15.1 JDBC基础 303
15.1.1从ODBC到JDBC 303
15.1.2 JDBC 304
15.1.3 JDBC Driver 305
15.1.4 JDBC API 306
15.2创建JDBC应用 311
15.2.1 JDBC连接数据库 311
15.2.2创建一个JDBC应用 313
15.3实例 317
15.3.1建立连接 317
15.3.2数据库操作 318
15.3.3 JDBC2.0中的数据源 321
习题 322
上机实训 323
第16章 综合案例——铁路查询系统 324
16.1关于本章的说明 325
16.2相关环境设置工作 325
16.2.1启动Microsoft SQL Server 2008 325
16.2.2注册新的服务器对象 327
16.2.3使用对象资源管理器 329
16.2.4建立数据库和表 330
16.2.5设置JBuilder中的JDBC连接方式及参数 334
16.3开发详细步骤 340
16.4完整代码 348
参考文献 357