标题：由浅入深学Java
基本信息
  作者：李志刚  
丛书名：由浅入深学
出版社：电子工业出版社 
ISBN：9787121132384
上架时间：2011-7-8 
出版日期：2011 年7月
开本：16开
页码：557 
版次：1-1
内容简介
《由浅入深学java：基础、进阶与必做260题(含dvd光盘1张)》讲解了java方方面面的知识，全书共分为4篇共28章，第1篇从最基本的jdk安装讲起，包括基本语法与数据类型、数组、字符串、程序控制语句、面向对象编程、继承、多态、接口等内容；第2篇讲解了图形界面开发基础、swing编程、事件处理、数字处理、异常处理、文件的输入与输出、反射、线程、正则表达式、封装类、容器、泛型、数据结构、数据库编程和applet等高级技术；第3篇讲解了socket、jsp、servlet等网络编程技术；第4篇介绍了一个综合案例，让读者有提高的机会。本书是一本java编程自学手册，读者可以跟随书的讲解，边学习边上机，最好在学完一章后，独立做出每章的习题，这样可以带着问题学习，进步得会更快。
《由浅入深学java：基础、进阶与必做260题(含dvd光盘1张)》是一本java编程自学手册，读者可以跟随书的讲解，边学习边上机，最好在学完一章后，独立做出后面的习题，这样可以带着问题学习，进步得会更快。
目录
《由浅入深学java：基础、进阶与必做260题(含dvd光盘1张)》 
第1篇 语言基础篇 
第1章 java入门（ 教学视频：18分钟） 1 
1.1 java简介 1 
1.2 java的特点 1 
1.3 jdk的安装及配置 2 
1.3.1 jdk的下载安装 2 
1.3.2 配置环境变量 3 
1.3.3 jdk环境的测试 3 
1.4 java语言开发工具 4 
1.4.1 eclipse的安装与使用 4 
1.4.2 myeclipse的安装 6 
1.4.3 使用开发工具编写“helloworld！” 7 
1.5 习题 9 
第2章 java基本数据类型（ 教学视频：46分钟） 10 
2.1 基本数据类型 10 
2.1.1 布尔类型 10 
2.1.2 字符型 11 
2.1.3 整型 11 
2.1.4 实型 12 
.2.2 数据类型的转换 12 
2.2.1 隐式数据类型转换 13 
2.2.2 显式类型转换 14 
2.3 运算符和表达式 14 
2.3.1 算术运算符及表达式 15 
2.3.2 关系运算符及表达式 16 
2.3.3 逻辑运算符及表达式 17 
2.3.4 位运算符及表达式 18 
2.3.5 赋值运算符及表达式 19 
2.4 习题 19 
第3章 数组（ 教学视频：31分钟） 23 
3.1 数组基础 23 
3.1.1 创建数组 23 
3.1.2 数组的初始化 24 
3.1.3 数组的使用 25 
3.2 数组的排序 27 
3.2.1 选择排序法 27 
3.2.2 冒泡排序法 28 
3.3 多维数组 28 
3.4 习题 30 
第4章 字符串（ 教学视频：27分钟） 34 
4.1 字符串 34 
4.1.1 声明字符串 34 
4.1.2 创建字符串 34 
4.2 字符串操作 35 
4.2.1 字符串的比较 35 
4.2.2 连接字符串 36 
4.2.3 复制字符串 37 
4.2.4 更改字符串的内容 37 
4.2.5 获取字符串的长度 38 
4.2.6 分割字符串 39 
4.3 stringbuffer 39 
4.4 习题 40 
第5章 程序控制语句（ 教学视频：24分钟） 43 
5.1 顺序结构 43 
5.2 条件语句 43 
5.2.1 if语句 44 
5.2.2 switch语句 47 
5.3 循环语句 48 
5.3.1 for循环 48 
5.3.2 while循环 50 
5.3.3 do-while 51 
5.4 中断控制 52 
5.4.1 continue 52 
5.4.2 break 53 
5.4.3 return 53 
5.5 习题 54 
第6章 面向对象程序设计（ 教学视频：10分钟） 59 
6.1 面向对象程序设计基础 59 
6.2 类 59 
6.2.1 定义及使用类 59 
6.2.2 主方法 61 
6.2.3 构造方法 61 
6.2.4 成员变量 64 
6.2.5 局部变量 66 
6.2.6 this关键字 67 
6.3 对象 69 
6.3.1 创建和使用对象 69 
6.3.2 对象行为和属性的访问 71 
6.3.3 比较对象 72 
6.3.4 销毁对象 73 
6.4 习题 74 
第7章 继承（ 教学视频：13分钟） 78 
7.1 继承概述 78 
7.1.1 什么是继承 78 
7.1.2 实现继承 78 
7.2 继承关系 79 
7.2.1 单一继承关系 79 
7.2.2 多重继承关系 80 
7.3 抽象类 81 
7.4 使用关键字final 82 
7.4.1 常量 82 
7.4.2 方法 83 
7.4.3 类 83 
7.5 object类 84 
7.5.1 object对象 84 
7.5.2 重写equals方法和tostring方法 84 
7.6 习题 86 
第8章 多态（ 教学视频：15分钟） 90 
8.1 多态的概述 90 
8.1.1 重写 90 
8.1.2 重载 92 
8.2 绑定 94 
8.2.1 静态绑定 94 
8.2.2 动态绑定 95 
8.3 习题 96 
第9章 接口（ 教学视频：20分钟） 100 
9.1 认识接口 100 
9.1.1 概述 100 
9.1.2 定义接口 100 
9.1.3 实现接口 101 
9.1.4 多重实现接口 102 
9.1.5 接口的引用 103 
9.2 内部类 105 
9.2.1 内部类概述 105 
9.2.2 匿名内部类 106 
9.2.3 继承内部类 108 
9.2.4 静态内部类 109 
9.2.5 引用外部类的对象 109 
9.3 包 111 
9.3.1 创建包 111 
9.3.2 导入包 112 
9.4 习题 112 
第2篇 高级编程篇 
第10章 图形界面开发基础（ 教学视频：43分钟） 119 
10.1 awt简介 119 
10.2 容器 119 
10.2.1 窗口 119 
10.2.2 面板 121 
10.3 组件 122 
10.3.1 按钮和标签 122 
10.3.2 复选框 124 
10.3.3 文本域 125 
10.3.4 列表 127 
10.4 布局管理器 129 
10.4.1 网格布局管理器 129 
10.4.2 顺序布局管理器 132 
10.4.3 边界布局管理器 134 
10.4.4 卡片布局管理器 135 
10.5 习题 137 
第11章 swing（ 教学视频：42分钟） 145 
11.1 swing基础 145 
11.2 swing组件 145 
11.2.1 按钮 146 
11.2.2 复选框 146 
11.2.3 单选按钮 147 
11.2.4 组合框 149 
11.2.5 进度条 150 
11.2.6 表格 150 
11.2.7 树 150 
11.2.8 文本框 151 
11.3 swing常用窗体 153 
11.3.1 jframe窗体 153 
11.3.2 jdialog窗体 154 
11.4 swing常用面板 156 
11.5 习题 158 
第12章 事件处理（ 教学视频：33分钟） 167 
12.1 事件类 167 
12.1.1 事件类分类 167 
12.1.2 动作事件类 168 
12.1.3 调整事件类 168 
12.1.4 焦点事件类 168 
12.1.5 项目事件类 169 
12.1.6 键盘事件类 169 
12.1.7 鼠标事件类 171 
12.1.8 窗口事件类 172 
12.2 事件监听器 173 
12.2.1 事件监听器的接口实现 174 
12.2.2 应用事件监听器 174 
12.2.3 事件监听器的特点 175 
12.3 事件适配器 175 
12.4 事件应用方法 176 
12.4.1 内部类方式应用 176 
12.4.2 匿名类方式应用 177 
12.4.3 外部类方式应用 178 
12.5 习题 179 
第13章 数字处理（ 教学视频：21分钟） 186 
13.1 math类介绍 186 
13.2 猜数字游戏 187 
13.3 判断是否是数字 188 
13.4 字符串转换成数字 190 
13.5 格式化数字 191 
13.6 习题 193 
第14章 异常处理（ 教学视频：12分钟） 196 
14.1 异常概述 196 
14.1.1 异常发生的原因 197 
14.1.2 异常处理机制 197 
14.2 异常的结构 197 
14.2.1 异常的层次结构 197 
14.2.2 java中的运行时异常类 198 
14.3 异常的处理 200 
14.3.1 获取异常信息 200 
14.3.2 异常声明 202 
14.3.3 抛出异常 203 
14.4 用户自定义异常类 206 
14.4.1 创建自己的异常类 206 
14.4.2 使用自己的异常类 207 
14.5 习题 208 
第15章 文件的输入与输出（ 教学视频：30分钟） 213 
15.1 流的概念 213 
15.2 输入输出流 213 
15.3 字节流 214 
15.3.1 字节输入、输出流 214 
15.3.2 字节文件输入、输出流 215 
15.3.3 字节缓冲输入、输出流 216 
15.3.4 字节数据输入、输出流 218 
15.3.5 字节对象输入、输出流 220 
15.4 字符流 222 
15.4.1 字符读、写流 222 
15.4.2 字符输入、输出流 223 
15.4.3 文件读、写字符流 224 
15.4.4 字符缓冲读、写流 226 
15.5 文件类 226 
15.5.1 file类 226 
15.5.2 file类应用 227 
15.5.3 randomaccessfile类 228 
15.5.4 randomaccessfile应用 229 
15.6 习题 232 
第16章 反射（ 教学视频：20分钟） 240 
16.1 反射概述 240 
16.1.1 使用class类 242 
16.1.2 成员变量 243 
16.1.3 成员方法 243 
16.1.4 创建实例 244 
16.2 应用反射 244 
16.2.1 访问类变量 244 
16.2.2 调用类方法 246 
16.3 反射的安全性 247 
16.4 习题 249 
第17章 线程（ 教学视频：35分钟） 255 
17.1 线程的概念 255 
17.2 线程的创建 255 
17.2.1 使用thread创建线程 255 
17.2.2 使用runnable创建线程 257 
17.2.3 两种方法比较 258 
17.2.4 创建多线程 258 
17.3 线程的使用 260 
17.3.1 开启线程 260 
17.3.2 线程休眠 261 
17.3.3 等待线程 263 
17.4 线程的控制 265 
17.4.1 线程的优先级 265 
17.4.2 线程让步 267 
17.4.3 线程同步 269 
17.4.4 多线程的死锁问题 273 
17.5 线程池 274 
17.6 swing线程应用 277 
17.6.1 多线程模拟钟表 277 
17.6.2 线程的优先级模拟赛车 281 
17.6.3 使用断点实现计数器 283 
17.6.4 使用线程实现屏保“璀璨星空” 286 
17.6.5 实现下雪场景 288 
17.6.6 实现瀑布效果 290 
17.6.7 滚动字幕 292 
17.7 习题 294 
第18章 正则表达式（ 教学视频：17分钟） 302 
18.1 正则表达式语法 302 
18.2 正则表达式的使用 304 
18.2.1 pattern类 304 
18.2.2 matcher类 305 
18.2.3 综合运用 306 
18.3 string类中的正则表达式应用 307 
18.3.1 模式匹配检查 307 
18.3.2 查找替换 308 
18.3.3 字符串分析 309 
18.4 习题 311 
第19章 封装类（ 教学视频：21分钟） 314 
19.1 常用的数据类型包装类 314 
19.1.1 integer类 314 
19.1.2 double类 315 
19.1.3 number类 317 
19.1.4 float类 317 
19.1.5 boolean类 318 
19.1.6 byte类 320 
19.2 stringbuffer类 321 
19.2.1 stringbuffer简介 321 
19.2.2 stringbuffer类的方法 321 
19.3 日期操作类 323 
19.3.1 date类 324 
19.3.2 dateformat类 325 
19.4 习题 326 
第20章 容器（ 教学视频：23分钟） 331 
20.1 容器概述 331 
20.2 迭代器 331 
20.3 list 333 
20.3.1 list接口方法 333 
20.3.2 链表迭代器接口方法 333 
20.3.3 链表和数组链表 334 
20.3.4 list应用 334 
20.4 集set 339 
20.4.1 set接口的方法 339 
20.4.2 哈希集和树集 340 
20.4.3 实现set 341 
20.5 映射map 343 
20.5.1 map接口方法 343 
20.5.2 哈希映射和树映射 344 
20.5.3 哈希映射应用 345 
20.5.4 实现map 346 
20.6 习题 347 
第21章 泛型（ 教学视频：15分钟） 355 
21.1 泛型概述 355 
21.2 泛型格式 355 
21.2.1 定义泛型类 355 
21.2.2 类型变量的限制 358 
21.3 泛型参数的继承和通配符 359 
21.3.1 泛型的继承 359 
21.3.2 泛型中的通配符 359 
21.4 习题 360 
第22章 数据结构（ 教学视频：39分钟） 364 
22.1 数据结构的基本概念 364 
22.2 算法 364 
22.2.1 算法概述 364 
22.2.2 算法分析 364 
22.2.3 递归算法 365 
22.2.4 排序算法 366 
22.3 链表 368 
22.3.1 java中的链表 368 
22.3.2 链表的添加 368 
22.3.3 链表的删除 370 
22.4 栈和队列 372 
22.4.1 栈 372 
22.4.2 队列 372 
22.4.3 java实现栈 372 
22.4.4 java实现队列 373 
22.5 习题 374 
第23章 数据库（ 教学视频：20分钟） 381 
23.1 数据库的介绍 381 
23.2 mysql概述 381 
23.2.1 mysql简介 381 
23.2.2 下载并安装mysql 382 
23.2.3 mysql使用 385 
23.3 sql语句 387 
23.3.1 查询语句select 388 
23.3.2 插入语句insert 388 
23.3.3 更新语句update 388 
23.3.4 删除语句delete 389 
23.3.5 建表语句create 389 
23.3.6 修改表语句alter 389 
23.3.7 删除表语句drop 390 
23.4 jdbc设计 390 
23.4.1 jdbc常见接口和类 390 
23.4.2 jdbc数据库连接步骤 391 
23.4.3 加载jdbc驱动程序 392 
23.4.4 获取connection连接对象 393 
23.5 java与各种数据库连接 394 
23.6 习题 395 
第24章 applet编程（ 教学视频：15分钟） 399 
24.1 applet类 399 
24.1.1 applet简介 399 
24.1.2 applet的开发流程 399 
24.1.3 applet的方法 400 
24.1.4 applet的生命周期 400 
24.2 applet应用 402 
24.2.1 applet中的文字处理 403 
24.2.2 动态物体输出 408 
24.2.3 图片处理 413 
24.2.4 放大镜 415 
24.3 习题 417 
第3篇 网络编程篇 
第25章 网络编程（ 教学视频：30分钟） 422 
25.1 网络基本概念 422 
25.2 tcp/ip 422 
25.2.1 tcp/ip与网络协议 422 
25.2.2 传输控制层（tcp） 423 
25.2.3 ip应用 425 
25.3 socket 429 
25.3.1 socket类 429 
25.3.2 serversocket类 430 
25.3.3 socket应用 431 
25.4 url 435 
25.4.1 url的使用 435 
25.4.2 提交表单信息 437 
25.4.3 简单的浏览器 437 
25.5 习题 439 
第26章 jsp（ 教学视频：31分钟） 445 
26.1 jsp运行环境搭建 445 
26.1.1 tomcat下载与安装 445 
26.1.2 tomcat的环境变量配置 446 
26.2 基本语法 447 
26.2.1 注释 447 
26.2.2 声明 448 
26.2.3 表达式 449 
26.2.4 脚本集 449 
26.3 jsp指令元素 451 
26.3.1 include 指令 451 
26.3.2 page指令 452 
26.3.3 taglib指令 453 
26.4 jsp动作元素 454 
26.4.1 <jsp:forward> 454 
26.4.2 <jsp:usebean> 454 
26.4.3 <jsp:setproperty> 456 
26.4.4 <jsp:getproperty> 457 
26.4.5 <jsp:include> 458 
26.4.6 <jsp:plugin> 458 
26.5 内置对象 459 
26.5.1 out对象 460 
26.5.2 request对象 460 
26.5.3 response对象 463 
26.5.4 session对象 466 
26.5.5 application对象 468 
26.5.6 pagecontext对象 470 
26.5.7 exception对象 470 
26.5.8 config对象 471 
26.6 习题 472 
第27章 servlet（ 教学视频：37分钟） 476 
27.1 servlet简介 476 
27.1.1 servlet接口 476 
27.1.2 目录结构 476 
27.1.3 编写servlet程序 477 
27.2 servlet的生命周期 480 
27.3 httpservlet类 480 
27.3.1 doget 480 
27.3.2 dopost 483 
27.4 httpservletresponse类及状态响应码 488 
27.5 servlet中的请求与响应 489 
27.6 servlet之间的跳转 491 
27.6.1 forward 491 
27.6.2 redirect 493 
27.6.3 refresh 495 
27.7 javabean 496 
27.7.1 使用javabean 496 
27.7.2 jsp中的javabean 496 
27.8 习题 499 
第4篇 综合案例篇 
第28章 智达图书馆管理系统 505 
28.1 项目立项 505 
28.1.1 需求分析 505 
28.1.2 可行性分析 505 
28.2 详细设计 506 
28.2.1 系统目标 507 
28.2.2 系统功能结构 507 
28.2.3 构建开发环境 507 
28.2.4 学生端系统预览 507 
28.2.5 管理员端系统预览 509 
28.3 数据库设计 510 
28.3.1 数据库分析 511 
28.3.2 e-r图 511 
28.3.3 数据表设计 512 
28.3.4 导入数据 514 
28.4 数据库接口 515 
28.5 登录模块 516 
28.5.1 登录界面 516 
28.5.2 键盘易用性 517 
28.5.3 管理员登录 518 
28.5.4 学生登录 519 
28.6 管理模块 520 
28.6.1 管理端界面的初始化 520 
28.6.2 管理端其他方法介绍 522 
28.7 图书查询模块 524 
28.7.1 查询界面 524 
28.7.2 查询界面构造器 525 
28.7.3 简单查询 526 
28.7.4 高级查询 527 
28.8 图书借阅预约模块 529 
28.8.1 界面开发 530 
28.8.2 显示图书信息 530 
28.8.3 借阅预约功能 532 
28.9 图书归还挂失模块 533 
28.9.1 界面开发 534 
28.9.2 查询借书记录 534 
28.9.3 归还和挂失图书 535 
28.9.4 挂失处理的开发 536 
28.9.5 其他方法介绍 537 
28.10 图书超期模块 539 
28.10.1 界面开发 539 
28.10.2 查询超期天数 540 
28.10.3 查询及交纳欠款 541 
28.11 学生管理模块 542 
28.11.1 界面开发 542 
28.11.2 响应管理事件 543 
28.11.3 操作学生信息 543 
28.12 图书管理模块 546 
28.12.1 界面开发 546 
28.12.2 响应管理事件 547 
28.12.3 操作图书信息 547 
28.12.4 修改图书信息 548 
28.13 管理员管理模块 549 
28.13.1 界面开发 549 
28.13.2 响应管理事件 550 
28.13.3 普通管理员功能 552 
28.13.4 添加管理员 553 
28.13.5 删除管理员功能 554 
28.13.6 修改管理员信息 554 
28.13.7 查询管理员信息 555 
28.14 集成和测试 556 
28.15 总结 557