跟我学Java的图书目录
第1章 Java概述 1
1.1 Java的发展史 2
1.1.1 Java起源 2
1.1.2 Java发展 2
1.2 Java是什么 3
1.2.1 Java语言 3
1.2.2 Java平台 3
1.2.3 Java网络操作系统 4
1.3 Java的特点 5
1.4 Java程序类型 6
1.5 JDK与JRE 6
1.5.1 Java开发工具包 6
1.5.2 Java运行环境 7
1.6 Java技术体系 7
1.7 Java虚拟机 8
1.7.1 虚拟机数据类型 8
1.7.2 Java虚拟机的生命周期 9
1.7.3 Java虚拟机的体系结构 9
1.8 垃圾收集器 11
1.9 本章习题 11
第2章 Java开发环境 13
2.1 J2SE的下载和安装 14
2.1.1 J2SE的下载 14
2.1.2 J2SE的安装 15
2.2 环境变量的配置与测试 16
2.2.1 设置环境变量path 16
2.2.2 设置环境变量classpath 17
2.2.3 环境变量的测试 18
2.3 API文档的下载与使用 18
2.4 第一个应用程序 19
2.4.1 HelloWorld程序 19
2.4.2 程序运行编译命令 21
2.4.3 HelloWorld编译与运行 24
2.5 简单开发工具介绍 25
2.5.1 EditPlus的编译与运行 25
2.5.2 在UltraEdit上开发Java 27
2.6 集成开发环境Eclipse介绍 30
2.6.1 Eclipse下载与安装 30
2.6.2 Eclipse的透视图 31
2.6.3 Eclipse的视图(View) 33
2.6.4 Eclipse的编辑器 33
2.6.5 Eclipse的工具栏和菜单栏 34
2.6.6 使用Eclipse编写HelloWorld
程序 36
2.7 本章习题 38
第3章 Java语言基础 39
3.1 标识符 40
3.1.1 标识符的概念 40
3.1.2 变量命名规则 40
3.1.3 变量命名技巧 41
3.2 关键字 41
3.3 注释 42
3.4 数据类型 43
3.4.1 整型 43
3.4.2 浮点型 44
3.4.3 字符型 46
3.4.4 布尔型 47
3.5 变量与常量 47
3.5.1 变量声明 48
3.5.2 变量赋值和初始化 48
3.5.3 常量 48
3.6 类型转化 49
3.6.1 数值类型之间的转换 50
3.6.2 强制类型转换 51
3.7 运算符 52
3.7.1 算术运算符 52
3.7.2 关系运算符 53
3.7.3 逻辑运算符 54
3.7.4 位运算符 55
3.7.5 自动递增和递减 58
3.7.6 三元运算符 60
3.7.7 运算符的优先级 60
3.8 本章习题 61
第4章 程序流程控制 63
4.1 顺序结构 64
4.2 条件语句 65
4.2.1 if语句 65
4.2.2 if-else语句 67
4.2.3 if-else-if语句 68
4.2.4 if语句的嵌套 70
4.2.5 布尔表达式 73
4.2.6 开关语句 75
4.3 循环语句 78
4.3.1 while循环结构 78
4.3.2 do-while 循环结构 79
4.3.3 for循环结构 80
4.3.4 循环的嵌套 83
4.4 转向语句 85
4.4.1 break中断语句 85
4.4.2 continue条件继续语句 87
4.4.3 标签语句 89
4.5 返回语句 92
4.6 综合实例:水仙花数 95
4.7 本章习题 95
第5章 字符串 97
5.1 字符串简介 98
5.1.1 字符串常量 98
5.1.2 String创建字符串常量 98
5.1.3 StringBuffer创建字符串 100
5.2 连接字符串 101
5.2.1 与字符串的连接 101
5.2.2 与其他数据类型的连接 102
5.3 String字符串操作 103
5.3.1 基本操作 103
5.3.2 比较 104
5.3.3 转化 107
5.3.4 查找 109
5.3.5 截取拆分 110
5.3.6 替换或修改 112
5.4 StringBuffer类操作 113
5.4.1 基本操作 113
5.4.2 字符串操作方法 116
5.4.3 添加append() 118
5.4.4 插入insert() 119
5.5 实例:字符串应用 120
5.6 本章习题 122
第6章 数组 123
6.1 一维数组 124
6.1.1 数组的概念 124
6.1.2 一维数组的声明 124
6.1.3 一维数组的初始化 124
6.1.4 一维数组的使用 126
6.1.5 一维数组的空间模型 127
6.1.6 基本数据类型数组 129
6.1.7 对象数组 130
6.1.8 数组参数 131
6.2 二维数组和多维数组 132
6.2.1 二维数组的声明 132
6.2.2 二维数组的初始化 133
6.2.3 二维数组的空间模型 134
6.2.4 二维数组的使用 134
6.3 数组操作 136
6.3.1 排序数组 136
6.3.2 查找 138
6.3.3 复制数组 140
6.3.4 填充数据 142
6.3.5 比较数组 144
6.4 实例:杨辉三角 146
6.5 本章习题 148
第7章 对象与类 149
7.1 面向对象程序设计 150
7.1.1 面向对象程序设计的概述 150
7.1.2 面向对象程序设计的特点 150
7.1.3 对象与类的关系 151
7.2 定义类 153
7.2.1 MasterCard类的实现 154
7.2.2 MasterCard类的使用 156
7.2.3 访问控制 158
7.2.4 构造方法 160
7.2.5 方法的参数 161
7.2.6 封装与隐藏 162
7.2.7 finalize()方法 164
7.3 静态域与静态方法 165
7.3.1 静态域 165
7.3.2 静态方法 167
7.3.3 Math类 169
7.4 构造方法 171
7.4.1 默认的域初始化 171
7.4.2 默认构造方法 171
7.4.3 拷贝构造方法 172
7.4.4 重载构造方法 173
7.4.5 调用构造方法 173
7.4.6 初始化块 174
7.5 包 175
7.5.1 包的概念 175
7.5.2 类的导入 176
7.5.3 包名与目录 177
7.5.4 静态导入 179
7.5.5 Java包介绍 179
7.6 类设计技巧 180
7.7 实例:完善MasterCard类 182
7.7.1 构造方法 182
7.7.2 setter方法 184
7.7.3 getter方法 185
7.7.4 其他方法 185
7.8 main()方法 187
7.9 本章习题 188
第8章 继承 189
8.1 父类和子类 190
8.2 super构造方法调用 191
8.3 封装和继承 193
8.4 使用继承 195
8.4.1 Object类 195
8.4.2 定义equals方法 196
8.5 关于设计好继承的几点建议 198
8.6 实例:一卡通类的继承 199
8.6.1 构造方法 199
8.6.2 setter方法 200
8.6.3 getter方法 201
8.6.4 方法覆盖 201
8.6.5 equals方法 202
8.6.6 其他需要强调的地方 202
8.7 本章习题 203
第9章 多态与抽象类 205
9.1 多态性概念 206
9.2 重载 206
9.2.1 重载概念 206
9.2.2 重载注意事项 207
9.3 覆盖 209
9.3.1 覆盖概念 209
9.3.2 覆盖与访问权限 211
9.3.3 静态方法覆盖 212
9.3.4 覆盖与异常抛出 213
9.3.5 抽象方法覆盖 214
9.3.6 覆盖与重载 215
9.4 静态绑定与动态绑定 216
9.4.1 静态绑定 217
9.4.2 动态绑定 218
9.5 抽象类 220
9.5.1 抽象类概念 220
9.5.2 抽象类应用 221
9.5.3 抽象类注意事项 223
9.6 本章习题 224
第10章 接口与内部类 225
10.1 接口 226
10.1.1 接口的概念 226
10.1.2 接口应用 227
10.1.3 抽象类实现接口 229
10.1.4 派生接口 229
10.1.5 Comparable接口 229
10.1.6 Comparable接口应用 231
10.1.7 接口中定义常量 233
10.1.8 Cloneable接口 235
10.1.9 Cloneable接口应用 236
10.1.10 抽象类与接口区别 239
10.2 内部类概念 239
10.3 成员内部类 239
10.3.1 创建内部类对象 240
10.3.2 内部类的this引用 242
10.3.3 成员内部类的修饰符 242
10.4 方法内部类 243
10.5 匿名内部类 244
10.5.1 继承式 246
10.5.2 接口式 247
10.5.3 参数式 247
10.6 静态嵌套类 248
10.7 内部类的继承 249
10.8 本章习题 252
第11章 线程 253
11.1 线程基础 254
11.1.1 什么是线程 254
11.1.2 Thread创建线程 254
11.1.3 Thread创建线程步骤 257
11.1.4 Runnable接口创建线程 259
11.1.5 Runnable创建线程步骤 260
11.2 线程周期 261
11.2.1 线程周期概念 261
11.2.2 线程的创建和启动 263
11.2.3 线程状态转换 265
11.2.4 等待线程结束 267
11.3 线程调度 270
11.4 线程同步 272
11.4.1 同步概念 272
11.4.2 同步格式 274
11.4.3 同步应用 276
11.5 线程通信 277
11.5.1 生产者/消费者 278
11.5.2 共享队列 279
11.5.3 运行生产者/消费者 280
11.6 死锁 281
11.7 本章习题 284
第12章 异常处理 287
12.1 异常的概念 288
12.2 异常的基本样式 289
12.3 Java异常类 290
12.3.1 异常类层次结构 290
12.3.2 异常处理方法 292
12.4 异常捕获 294
12.4.1 异常捕获处理语句块 294
12.4.2 必须执行语句块 297
12.4.3 必须执行语句的意外 299
12.5 异常抛出 300
12.5.1 异常抛出概念 300
12.5.2 throw 301
12.5.3 throws 302
12.5.4 抛出异常 305
12.6 自定义异常 306
12.6.1 创建用户自定义异常 307
12.6.2 捕获运行时异常 308
12.7 本章习题 309
第13章 图形界面编程 311
13.1 AWT简介 312
13.2 Swing基础 312
13.2.1 Swing的类层次结构 313
13.2.2 Swing特点 314
13.2.3 Swing程序结构简介 314
13.3 Swing组件 315
13.3.1 按钮(Jbutton) 316
13.3.2 复选框(JCheckBox) 317
13.3.3 单选框(JRadioButton) 318
13.3.4 组合框(JComboBox) 320
13.3.5 进程条(JprogressBar) 321
13.3.6 表格(JTable) 321
13.3.7 树(JTree) 322
13.3.8 文本框(JTextField)与
文本区(JTextArea) 323
13.4 布局管理器 325
13.4.1 FlowLayout布局管理器 325
13.4.2 BorderLayout布局管理器 326
13.4.3 BoxLayout布局管理器 327
13.4.4 GridLayout布局管理器 329
13.5 事件处理 330
13.5.1 事件监听器 330
13.5.2 事件适配器 331
13.5.3 事件 332
13.6 举例 335
13.6.1 界面设计 336
13.6.2 运算设计步骤 338
13.7 本章习题 342
第14章 Java I/O系统 343
14.1 I/O概述 344
14.2 文件操作 345
14.2.1 File类 345
14.2.2 File类应用 346
14.2.3 RandomAccessFile类 348
14.2.4 RandomAccessFile应用 349
14.3 字节流InputStream、
OutputStream 351
14.3.1 字节输入、输出流 351
14.3.2 字节文件输入、输出流 353
14.3.3 字节缓冲输入、输出流 354
14.3.4 字节数据输入、输出流 356
14.3.5 字节对象输入、输出流 358
14.4 字符流Reader、Writer 361
14.4.1 字符读、写流 361
14.4.2 字符输入、输出流 362
14.4.3 文件读、写字符流 363
14.4.4 字符缓冲区读、写流 365
14.5 本章习题 365
第15章 集合 367
15.1 集合概述 368
15.2 容器和迭代器 368
15.2.1 容器(Collection) 368
15.2.2 迭代器(Iterator) 369
15.3 链表List 371
15.3.1 链表List接口方法 371
15.3.2 链表迭代器接口 372
15.3.3 链表和数组链表 372
15.3.4 链表应用 373
15.3.5 数组链表应用 378
15.4 集Set 379
15.4.1 排序集接口 380
15.4.2 哈希集和树集 380
15.4.3 树集应用 383
15.5 映射Map 384
15.5.1 映射接口方法 384
15.5.2 排序映射接口 385
15.5.3 哈希映射和树映射 385
15.5.4 哈希映射应用 386
15.5.5 树映射应用 388
15.6 本章习题 389
第16章 Java与数据库 391
16.1 SQL语句 392
16.1.1 SQL语句分类 392
16.1.2 SELECT 392
16.1.3 INSERT 393
16.1.4 UPDATE 393
16.1.5 DELETE 393
16.1.6 CREATE 394
16.1.7 ALTER 394
16.1.8 DROP 395
16.2 MySQL概述 395
16.2.1 MySQL简介 395
16.2.2 下载并安装MySQL 396
16.2.3 MySQL使用 399
16.3 JDBC 402
16.3.1 JDBC设计思想 403
16.3.2 JDBC常见接口和类 403
16.3.3 JDBC数据库连接步骤 404
16.3.4 加载JDBC驱动程序 405
16.3.5 获取Connection连接
对象 406
16.4 Java与各种数据库连接 408
16.5 本章习题 410
第17章 Java Web应用——JSP 411
17.1 JSP技术概述 412
17.2 JSP运行环境搭建 412
17.2.1 Tomcat下载与安装 412
17.2.2 Tomcat的环境变量配置 413
17.3 基本语法 414
17.3.1 HTML注释 414
17.3.2 隐藏注释 415
17.3.3 声明 415
17.3.4 表达式 416
17.3.5 脚本集 416
17.4 JSP指令元素 418
17.4.1 Include 指令 418
17.4.2 Page 指令 420
17.4.3 Taglib 指令 421
17.5 JSP动作元素 421
17.5.1 <jsp:forward> 421
17.5.2 <jsp:useBean> 422
17.5.3 <jsp:setProperty> 424
17.5.4 <jsp:getProperty> 426
17.5.5 <jsp:include> 426
17.5.6 <jsp:plugin> 427
17.6 内置对象 428
17.6.1 out对象 429
17.6.2 request对象 429
17.6.3 response对象 434
17.6.4 session对象 436
17.6.5 application对象 438
17.6.6 pageContext对象 441
17.6.7 exception对象 442
17.6.8 config对象 442
17.7 计数器 443
17.8 本章习题 445
第18章 KTV管理系统 447
18.1 数据存储设计 448
18.2 管理界面 449
18.2.1 添加歌曲界面 450
18.2.2 歌曲查找界面 453
18.2.3 歌曲修改界面 457
18.2.4 删除歌曲 461
18.3 业务处理 464
18.3.1 实体类 464
18.3.2 数据处理 465
18.3.3 权限处理 469
创作背景 第1章:本书以Java的发展史开始,将读者引入了Java的殿堂。然后讲述了Java是什么,并分别讲述了Java语言的各个特点,最后概述了Java虚拟机和垃圾收集器。通过本章的学习,读者会对Java有个整体的了解。
第2章:详细介绍了开发Java程序所需要的开发工具和组件,深入讲解了它们的安装配置方法,并利用开发工具编写、编译、运行第一个应用程序。通过本章的学习,读者可以熟练地使用这些Java开发工具。
第3章:详细介绍了Java的基本语言知识,主要包括数据类型、变量和常量、以及运算符。通过本章Java语言最基本知识的学习,为以后Java的学习打下坚实的基础。
第4章:详细讨论了Java程序设计语言的流程控制语句,主要分为条件语句、循环语句、转向语句以及返回语句。本书所有的程序都是基于上面所提到的流程控制语句,读者应熟练掌握。
第5章:重点介绍了Java中字符串String类和StringBuffer类。Java中的字符串都是以对象的形式表示,加深字符串操作方法的理解,为以后程序设计准备必要的条件。
第6章:本章讲述了Java中数组的内容。首先详细介绍一维数组的声明、初始化、使用、以及空间模型,然后讨论二维数组,最后还提供了数组操作方法。
第7章:从本章开始进入了Java的面向对象篇,主要讨论抽象性。先从理论的角度理解面向对象设计的思想,然后定义了一个类,贯穿整章内容的讲解,其次讨论了静态域、方法,构造方法,以及包的概念。
第8章:本章主要讨论面向对象程序设计的继承的概念。首先提供了第7章MasterCard类的一个子类TeacherMasterCard,并讲述了super调用构造方法、如何设计继承。
第9章:本章主要讨论面向对象程序设计的多态性的概念。重点突出讲解方法的重载、方法的覆盖以及动态绑定的概念,最后还讲述了抽象类的知识点。
第10章:详细讲述了接口和内部类的概念。接口可以实现多继承的功能;内部类可以使得Java程序更加简洁、明了,具有模块化。
第11章:本章主要讨论线程的相关内容。包括线程的创建方式、线程周期、线程调度、线程同步、线程通信以及线程死锁等内容。通过本章的学习,读者可以设计出安全的多线程程序。
第12章:详细讲述了异常处理方法。从异常类的层次结构、异常捕获、异常抛出以及自定义异常类多个方面进行讨论。使用异常处理机制来增强程序的健壮性。
第13章:本章开始进入图形界面设计篇。详细介绍了Java的事件处理机制和Swing用户界面设计相关内容。主要包括Swing轻量级容器、Swing组件、布局管理器等内容。
第14章:详细讨论了Java I/O系统。包括File文件类、字节流相关的派生类和字符流相关的派生类。通过本章的学习,读者要学会高效的文件读写操作。
第15章:详细讨论了集合的相关知识。包括Collection、Iterator以及3个集合接口:List接口、Set接口和Map接口。
第16章:本章主要讲述MySQL在Java中的使用。不仅讲述了MySQL的基本SQL语句,而且还讲述了JDBC如何与MySQL互动。通过本章的学习,读者可以开发小型的数据库应用程序。
第17章:本章主要介绍JSP程序设计。不仅介绍了JSP指令元素、JSP动作元素,还介绍了JSP的内置对象,最后还提供一个综合的案例。
第18章:本章给出了一个综合案例——KTV管理系统。涉及的知识点包括I/O输入流输出流和Swing基础知识。