第1章 初次接触Java 1
1.1 Java语言概述 1
1.1.1 Java语言的发展历史 1
1.1.2 Java应用平台 2
1.1.3 Java语言特点 3
1.1.4 Java开发工具 4
1.2 Java和C/C++的比较 4
1.3 Java平台工作原理 5
1.4第一个Java程序 6
1.4.1 Java程序开发步骤 6
1.4.2第一个Java应用程序 6
1.4.3第一个Java小应用程序 8
小结 8
习题 9
第2章 Java语言基础 10
2.1标识符与关键词 10
2.1.1标识符 10
2.1.2关键词 11
2.2数据类型 11
2.3变量与常变量 13
2.3.1声明变量 13
2.3.2赋值 13
2.3.3常变量 13
2.4运算符 14
2.4.1算术运算符 14
2.4.2关系运算符和逻辑运算符 15
2.4.3位运算符 16
2.4.4赋值运算符 18
2.4.5条件运算符 18
2.4.6运算符优先级 18
2.5类型转换 19
2.6流程控制 20
2.6.1复合语句和块作用域 20
2.6.2 if语句 20
2.6.3 while语句和do-while语句 23
2.6.4 for语句 25
2.6.5循环嵌套 25
2.6.6 break与continue 26
2.6.7 switch语句 28
小结 29
习题 30
第3章 类与对象 31
3.1面向对象程序设计 31
3.1.1面向对象 31
3.1.2面向对象的特点 32
3.2类 33
3.2.1类的定义 33
3.2.2类的实现 33
3.2.3成员变量 34
3.2.4成员方法 34
3.3对象 36
3.3.1对象的定义 36
3.3.2对象的创建和使用 36
3.3.3对象的回收 39
3.4方法 39
3.4.1方法参数传递 39
3.4.2方法的重载 40
3.4.3构造方法 42
3.4.4局部变量 44
3.5关键字this 45
3.6关键字static 47
3.7包 49
3.7.1包的定义 49
3.7.2 Java系统常用包 50
3.7.3 import语句 50
3.8访问控制 51
小结 53
习题 53
第4章 继承与多态 55
4.1继承机制 55
4.1.1引入继承 55
4.1.2继承的基本概念 57
4.2类的继承 58
4.2.1继承 58
4.2.2继承与构造方法 59
4.2.3子类对象的初始化 61
4.2.4继承与访问控制 62
4.2.5覆写 62
4.3对象类型转换和多态 64
4.4关键词final 65
4.5抽象方法与抽象类 66
4.6接口 68
4.7内部类和匿名内部类 70
4.8 Object类 72
4.9包装类 73
小结 75
习题 75
第5章 常用数据结构 77
5.1数组 77
5.1.1一维数组 77
5.1.2多维数组 80
5.1.3 foreach形式的for语句 82
5.1.4 Arrays类 83
5.2字符串 84
5.2.1 String类 85
5.2.2 StringBuilder与StringBuilder类 87
5.2.3 String类与StringBuilder类的转换 88
5.3 Vector类 89
小结 91
习题 91
第6章 Java异常处理 93
6.1异常简介 93
6.1.1引入异常 93
6.1.2异常类层次结构 94
6.1.3常用异常类 95
6.1.4用户自定义异常类 96
6.2 Java异常处理机制 97
6.2.1抛出和声明异常 97
6.2.2捕捉异常 98
6.3使用用户自定义异常 101
小结 103
习题 104
第7章 Java IO流 105
7.1输入/输出流 105
7.1.1流 105
7.1.2流的分类 106
7.2字节流和字符流 107
7.2.1字节流概述 107
7.2.2字节输入流 108
7.2.3字节输出流 108
7.2.4字符流概述 108
7.2.5字符输入流 109
7.2.6字符输出流 110
7.3文件及文件流 110
7.3.1文件及目录管理 110
7.3.2文件的字节流读/写 112
7.3.3文件的字符流读/写 113
7.3.4随机文件的读/写 114
7.4过滤流 117
7.4.1缓冲流 117
7.4.2数据流 119
7.4.3打印流 120
7.5标准流 121
7.6对象流 122
7.6.1对象序列化 122
7.6.2对象流 122
7.7 Scanner类 124
7.8流的选择 126
小结 126
习题 127
第8章 图形用户界面编程 128
8.1图形用户界面 128
8.2容器组件 129
8.3 Java事件处理 131
8.3.1委托事件模型 132
8.3.2事件与监听器 132
8.4布局管理器 136
8.4.1流布局器 137
8.4.2网格布局器 138
8.4.3边界布局器 139
8.5 Swing基本组件 140
8.5.1按钮 140
8.5.2标签 141
8.5.3面板 142
8.5.4文本框、文本域 142
8.5.5滚动窗格 144
8.5.6复选框、单选按钮 146
8.5.7组合框 148
8.5.8列表 150
8.6 Swing高级组件 151
8.6.1菜单 151
8.6.2标准对话框 155
8.7绘制几何图形、设置字体、颜色 157
8.7.1创建绘图接口 158
8.7.2绘制文本 158
8.7.3字体 158
8.7.4颜色 159
8.7.5创建几何图形 159
8.7.6绘制几何图形 160
8.8简单的文本编辑器 162
小结 166
习题 166
第9章 applet 168
9.1 applet小程序 168
9.1.1简单的applet小程序 168
9.1.2 applet的生命周期 170
9.1.3安全问题 172
9.1.4 applet的HTML标记及属性 172
9.2 applet案例——简易画板 175
小结 180
习题 180
第10章 多线程编程 182
10.1线程简介 182
10.1.1引入线程 182
10.1.2多进程和多线程 183
10.1.3 Thread类 183
10.1.4 Runnable接口 184
10.2线程的实现 184
10.2.1继承Thread类 184
10.2.2实现Runnable接口 186
10.2.3两种实现方式对比 188
10.3线程的调度 191
10.3.1线程的生命周期 191
10.3.2线程的优先级 192
10.3.3线程的调度 193
10.4线程的基本控制 194
10.4.1线程睡眠 194
10.4.2线程状态测试 195
10.4.3线程加入 196
10.4.4线程礼让 197
10.4.5守护线程 198
10.5多线程的同步与死锁 199
10.5.1共享资源同步 199
10.5.2线程间交互同步 204
10.5.3多线程死锁 209
小结 211
习题 211
第11章 Java网络编程 213
11.1网络编程基础知识 214
11.1.1相关术语 214
11.1.2 TCP/IP协议 215
11.1.3 Java中的网络支持 215
11.2 InetAddress类 216
11.3 URL和URLConnection 217
11.3.1 URL 217
11.3.2 URLConnection 219
11.4基于TCP的Socket网络编程 219
11.4.1 Socket通信 219
11.4.2创建Socket 220
11.4.3 Socket通信案例 221
11.5基于UDP的Socket网络编程 226
11.5.1 Datagram通信 226
11.5.2创建Datagram 227
11.5.3 Datagram通信案例 227
小结 229
习题 229
第12章 数据库编程 231
12.1 JDBC简介 231
12.1.1 JDBC 231
12.1.2 JDBC驱动程序 231
12.2 JDBC的主要类及接口 232
12.2.1 Driver接口 233
12.2.2 DriverManager类 233
12.2.3 Connection接口 234
12.2.4 Statement接口 234
12.2.5 PreparedStatement接口 235
12.2.6 ResultSet接口 236
12.3 MySQL概述 237
12.3.1 MySQL的安装 237
12.3.2 MySQL常用操作 240
12.4数据库应用程序 242
12.4.1 JDBC开发步骤 242
12.4.2配置MySQL数据库驱动程序 243
12.4.3连接数据库 244
12.4.4建立数据表 244
12.4.5插入数据 246
12.4.6修改数据 247
12.4.7删除数据 248
12.4.8查询数据 249
小结 253
习题 253
附录A JDK开发工具 256
附录B Eclipse集成开发环境 262
附录C Java编码规范 266
参考文献 270