《Java程序设计入门 第2版》是关于Java语言程序设计的入门图书。全书从Java入门开始,介绍了Java基础,控制语句与数组,类与对象,继承,包、接口和内部类,异常处理,多线程,字符串处理,Applet与事件处理,抽象窗口工具包,Java I/O系统等内容。通过本书的学习,读者可以从零开始认识和掌握Java语言的基本概念和数据结构。
本书不但适用于Java语言的初学者,而且可以作为大专院校相关专业师生的学习用书和培训学校的教材。
1.基础知识全面覆盖,讲解透彻,步骤详细,示例代码逐句解释,每一步的操作,都细细道来,清晰明了。
2.图书内容简单易懂,配合大量示例代码与习题,让读者轻松掌握知识点。
本书是一本基于示例的教程,旨在满足希望了解 Java 基本概念的初学者和中级用户的需求。Java 是简单、高效的程序创建(包括基于窗口和基于 Web 的程序)工具,本书着重展现了 Java 的这一特点。
本书的亮点在于其中介绍的每个概念都辅以相应的程序作为示例,以便于读者更好地理解。此外,所有程序都配有逐行讲解,即使没有编程经验的读者也能够明确背后的概念并掌握编程技术,在设计程序时加以灵活运用。
本书的主要特色如下。
·编程方法 以直观的方式介绍了面向对象编程的重要概念并通
过恰当的示例对其进行诠释。
·提示 以提示的形式提供了额外信息。
·演示 广泛采用了示例、示意图、流程图、表格、屏幕截图和编程练习。
·学习目标 每章的第一页都概括了本章的学习目标。
·自我评估测试、复习题以及练习 每章都有自我评估测试,以便读者评估自己学到的知识。自我评估测试的答案在各章末尾给出。另外,在各章末尾还有复习题和练习,教师可以将其作为试题和练习使用。
通过本书,读者将学习:
● 面向对象编程
● 多线程
● 异常处理
● 字符串处理
● Applet 编程
● 事件处理
● 抽象窗口工具包
● 文件处理
Sham Tickoo教授及其作者团队致力于计算机辅助设计和制造(CAD / CAM)、计算机编程和应用、计算机辅助设计和制造的最佳教科书和免费教学资源、 GIS、土木、动画和相关技术。他们推出了计算机编程和动画领域的一些最优秀的图书。
第 1章 Java入门 1
1.1 概述 2
1.2 Java的历史与演变 2
1.3 Java的特性 3
1.4 面向对象编程概念 4
1.4.1 数据抽象 4
1.4.2 封装 4
1.4.3 多态 4
1.4.4 继承 5
1.4.5 接口 6
1.5 Java编译器和解释器 7
1.6 安装Java开发套件 8
1.7 Java语句 9
1.7.1 Java API和包 9
1.7.2 import关键字 10
1.7.3 class关键字 10
1.7.4 System.out.println()语句 10
1.7.5 访问修饰符 11
1.7.6 Java中的注释 11
1.8 编写第 一个Java程序 12
1.9 设置程序目录路径 14
1.9.1 设置临时路径 14
1.9.2 设置永久路径 15
1.10 安装NetBeans IDE 17
1.11 在NetBeans中编写第 一个Java程序 18
1.12 自我评估测试 21
1.13 复习题 22
1.14 练习 23
第 2章 Java基础 24
2.1 概述 25
2.2 标识符 25
2.3 关键字 25
2.4 数据类型 26
2.4.1 原始数据类型 26
2.4.2 派生数据类型 29
2.4.3 用户自定义类型 29
2.5 转义序列 29
2.6 变量 32
2.6.1 变量声明 32
2.6.2 变量初始化 32
2.6.3 变量类型 34
2.6.4 变量的作用域与生命期 36
2.7 类型转换 36
2.7.1 隐式转换(扩大转换) 36
2.7.2 显式转换(收窄转换) 37
2.8 运算符 39
2.8.1 单目运算符 39
2.8.2 算术运算符 43
2.8.3 按位运算符 44
2.8.4 关系运算符 50
2.8.5 逻辑运算符 50
2.8.6 赋值(=)运算符 51
2.8.7 :运算符 56
2.8.8 instanceof运算符 57
2.8.9 运算符优先级 58
2.9 命令行参数 59
2.9.1 String类型转换为int类型 60
2.9.2 String类型转换为long类型 61
2.9.3 String类型转换为float类型 61
2.10 自我评估测试 62
2.11 复习题 62
2.12 练习 63
第3章 控制语句与数组 64
3.1 概述 65
3.2 流程图 65
3.3 控制语句 65
3.3.1 选择语句 66
3.3.2 迭代语句 80
3.3.3 跳转语句 88
3.4 数组 92
3.4.1 一维数组 92
3.4.2 多维数组 96
3.5 foreach循环 98
3.6 自我评估测试 100
3.7 复习题 100
3.8 练习 102
第4章 类与对象 103
4.1 概述 104
4.2 类 104
4.3 对象 105
4.3.1 创建对象 105
4.3.2 初始化实例变量 105
4.3.3 访问实例变量 106
4.3.4 为对象引用变量赋值 109
4.4 方法 111
4.4.1 定义方法 111
4.4.2 调用方法 112
4.4.3 带有返回值的方法 113
4.4.4 向方法传递参数 115
4.4.5 向方法传递对象 117
4.4.6 从方法返回对象 119
4.4.7 向方法传递数组 121
4.4.8 方法重载 122
4.5 构造函数 124
4.5.1 默认构造函数 124
4.5.2 带参数的构造函数 127
4.5.3 复制构造函数 129
4.5.4 构造函数重载 131
4.6 垃圾回收 133
4.7 finalize()方法 133
4.8 this关键字 134
4.9 静态数据成员与方法 135
4.10 递归 136
4.11 自我评估测试 138
4.12 复习题 138
4.13 练习 140
第5章 继承 141
5.1 概述 142
5.2 继承基础 142
5.2.1 单一继承 143
5.2.2 多级继承 145
5.2.3 层次继承 147
5.2.4 多重继承 149
5.2.5 混合继承 149
5.3 访问限定符与继承 149
5.3.1 private 149
5.3.2 public 150
5.3.3 protected 150
5.3.4 default 150
5.4 super关键字 154
5.4.1 调用父类构造函数 154
5.4.2 使用super关键字访问成员 157
5.5 方法重写 159
5.6 动态方法分派 161
5.7 抽象方法 163
5.8 final关键字 165
5.8.1 将变量声明为常量 165
5.8.2 避免重写 165
5.8.3 避免继承 166
5.9 自我评估测试 166
5.10 复习题 167
5.11 练习 169
第6章 包、接口和内部类 170
6.1 概述 171
6.2 Object类 171
6.3 包 171
6.3.1 定义包 172
6.3.2 访问包 172
6.3.3 包内部的访问保护 174
6.3.4 导入包 174
6.4 接口 176
6.4.1 定义接口 177
6.4.2 实现接口 177
6.4.3 接口变量 179
6.4.4 扩展接口 180
6.4.5 嵌套接口 183
6.5 嵌套类 186
6.5.1 静态嵌套类 186
6.5.2 非静态嵌套类 188
6.6 自我评估测试 194
6.7 复习题 194
6.8 练习 195
第7章 异常处理 196
7.1 概述 197
7.2 异常处理机制 197
7.2.1 异常类 197
7.2.2 异常类型 197
7.2.3 异常处理机制中用到的语句块 198
7.2.4 定义自己的异常子类 213
7.3 自我评估测试 214
7.4 复习题 215
7.5 练习 216
第8章 多线程 217
8.1 概述 217
8.2 多线程简介 218
8.2.1 线程模型 218
8.2.2 线程优先级 218
8.3 main线程 219
8.4 创建新线程 220
8.4.1 实现Runnable接口 220
8.4.2 扩展Thread类 224
8.5 创建多个线程 226
8.5.1 isAlive()和join()方法 227
8.5.2 设置线程优先级 230
8.6 同步 233
8.6.1 互斥 233
8.6.2 协作(线程间通信) 238
8.6.3 wait()与sleep()方法之间的差异 240
8.7 死锁 241
8.8 自我评估测试 241
8.9 复习题 241
8.10 练习 242
第9章 字符串处理 243
9.1 概述 244
9.2 字符串 244
9.3 String类的构造函数 244
9.4 字符串比较方法 246
9.4.1 equals() 246
9.4.2 equalsIgnoreCase() 246
9.4.3 compareTo() 248
9.4.4 compareToIgnoreCase() 248
9.4.5 运算符== 249
9.4.6 regionMatches() 250
9.4.7 startsWith() 250
9.4.8 endWith() 251
9.4.9 toString() 251
9.4.10 字符串提取方法 252
9.4.11 字符串修改方法 254
9.4.12 改变字符大小写 255
9.4.13 字符串搜索方法 256
9.4.14 获得字符串长度 259
9.5 StringBuffer类 260
9.5.1 StringBuffer类的构造函数 260
9.5.2 StringBuffer类的方法 261
9.6 自我评估测试 267
9.7 复习题 267
9.8 练习 268
第 10章 Applet与事件处理 269
10.1 概述 270
10.2 Applet 270
10.2.1 Applet类 270
10.2.2 Applet的生命周期 271
10.2.3 paint()方法 272
10.2.4 创建Applet 272
10.2.5 设置Applet的颜色 275
10.2.6 向Applet传递参数 277
10.2.7 getCodeBase()与getDocumentBase()方法 278
10.3 事件处理 280
10.3.1 事件处理机制 280
10.3.2 事件类 280
10.3.3 事件源 288
10.3.4 创建事件侦听器 289
10.4 自我评估测试 291
10.5 复习题 291
10.6 练习 292
第 11章 抽象窗口工具包 293
11.1 概述 294
11.2 AWT窗口 294
11.3 使用图形 299
11.3.1 绘制线条 299
11.3.2 绘制矩形 301
11.3.3 绘制圆形和椭圆形 302
11.3.4 绘制弧线 303
11.3.5 绘制多边形 305
11.4 AWT控件 307
11.4.1 标签控件 307
11.4.2 按钮控件 310
11.4.3 文本字段控件 312
11.4.4 复选框控件 315
11.4.5 下拉列表控件 319
11.4.6 列表控件 322
11.4.7 滚动条控件 328
11.4.8 文本区域控件 330
11.5 布局管理器 332
11.5.1 FlowLayout 332
11.5.2 BorderLayout 334
11.5.3 GridLayout 335
11.6 自我评估测试 336
11.7 复习题 337
11.8 练习 337
第 12章 Java I/O系统 338
12.1 概述 339
12.2 与流相关的类 339
12.2.1 字节流类 339
12.2.2 字符流类 342
12.3 File类 343
12.3.1 创建文件应遵循的命名约定 343
12.3.2 读写字符文件 345
12.3.3 读写字节文件 347
12.4 随机访问文件 348
12.5 自我评估测试 353
12.6 复习题 354
12.7 练习 354