本书图文并茂,示例丰富,通过284幅图表和258段代码,由浅入深地解说了从Java的基础知识到面向对象编程的内容,涉及变量、分支、循环、基本数据类型和运算、数组、方法、类、包、接口、字符和字符串、异常处理等。书中出现的程序包括猜数游戏、猜拳游戏、心算训练等,能够让读者愉快地学习。
1. 258段代码+284幅图表,比课本更易懂!
本书沿袭《明解C语言》的风格,图文并茂,讲解清晰易懂。
2. 从基础知识到面向对象编程完全掌握!
从Java的基础知识讲起,循序渐进,直到面向对象编程的内容。书中结合猜数字游戏、猜拳游戏、心算训练等有趣的游戏程序进行讲解,让学习过程完全不枯燥。
3. 本书荣获日本工学教育协会著作奖。原版系列累计畅销超100万册。
4. 双色印刷,技术书也能赏心悦目。
柴田望洋(作者)
日本福冈工业大学信息工程学院副教授。在IT界家喻户晓,编写了一系列富有影响力的计算机教材和参考书,如《明解C语言》《明解C语言:中级篇》《明解C++》等。本书荣获日本工学教育协会著作奖。
侯振龙(译者)
管理科学与工程专业硕士,日语一级,软件开发工程师,具有十年对日软件开发经验,现就职于某日本独资企业。
第1章 在画面上显示字符 1
1-1 关于Java 2
Java的诞生 2
Java的特点 2
Java的发展 4
学前准备 4
1-2 在画面上显示字符 5
创建和运行程序 5
注释 8
程序结构 10
字符串常量 11
在画面上输出和流 12
字符串的拼接 13
换行 13
符号的称呼 14
自由书写 15
缩进 16
小结 19
第2章 使用变量 21
2-1 变量 22
输出运算结果 22
变量 25
变量和初始化 28
2-2 通过键盘输入 31
通过键盘输入 31
运算符和操作数 33
final变量 36
生成随机数 38
字符串的读入 40
小结 43
第3章 程序流程之分支 45
3-1 if语句 46
if-then语句 46
关系运算符 47
if-then-else语句 47
相等运算符 50
逻辑非运算符 50
嵌套的if语句 51
表达式和求值 55
表达式语句和空语句 57
逻辑与运算符和逻辑或运算符 58
条件运算符 62
三个值中的最大值 64
程序块 66
两个值的排序 67
3-2 switch语句 70
switch语句 70
选择语句 74
3-3 关键字、标识符、运算符 75
关键字 75
分隔符 75
标识符 75
常量 76
运算符 76
小结 81
第4章 程序流程之循环 83
4-1 do语句 84
do语句 84
4-2 while语句 90
while语句 90
递增运算符和递减运算符 91
while语句和do语句 97
复合赋值运算符 98
4-3 for语句 103
for语句 103
流程图 105
4-4 多重循环 110
九九乘法表 110
直角三角形的显示 111
4-5 break语句和continue语句 114
break语句 114
continue语句 115
带标签的break语句 117
带标签的continue语句 119
4-6 printf方法 121
printf方法 121
小结 125
第5章 基本类型和运算 127
5-1 基本类型 128
基本类型 128
整型 129
浮点型 137
布尔型(boolean型) 141
5-2 运算和类型 144
运算和类型 144
造型运算符 146
基本类型的缩小转换 148
基本类型的放大转换 150
基本类型的放大转换和缩小转换 151
循环的控制 152
5-3 转义字符 154
转义字符 154
小结 157
第6章 数组 159
6-1 数组 160
数组 160
数组的构成元素 163
数组的初始化和赋值 169
使用数组处理成绩 170
计算数组元素中的最大值 171
线性查 172
扩展for语句 176
对数组进行倒序排列 178
数组的复制 180
字符串数组 184
引用类型和对象 185
final数组 187
6-2 多维数组 188
多维数组 188
多维数组的内部 191
不规则二维数组的内部 193
初始值 195
小结 197
第7章 方法 199
7-1 方法 200
方法 200
return语句 205
值传递 207
void方法 208
方法的通用性 209
其他方法的调用 210
作用域 212
不接收参数的方法 214
7-2 窥探整数内部 217
位运算 217
移位运算 219
7-3 操作数组的方法 225
计算最大值的方法 225
线性查找 226
对数组中的元素进行倒序排列 228
比较两个数组 230
返回数组的方法 232
多维数组的传递 235
7-4 重载 237
方法的重载 237
小结 241
第8章 类的基础知识 243
8-1类 244
数据操作 244
类 245
构造函数 254
方法 256
8-2 汽车类 260
类的独立 260
标识符的命名 267
小结 69
第9章 创建日期类 271
9-1 创建日期类 272
日期类 272
构造函数和方法 272
访问器 274
类类型变量的赋值 275
类类型变量的比较 277
作为参数的类类型变量 279
类类型实例的数组 281
日期类的改进 285
9-2 类类型的字段 295
类类型的字段 295
返回引用的方法 296
汽车类的使用示例 298
has-A 300
小结 302
第10章 类变量和类方法 305
10-1 类变量 306
类变量(静态字段) 306
类变量的访问 309
库中提供的类变量 311
10-2 类方法 314
类方法 314
类变量和类方法 317
Math类的类方法 320
工具类 322
10-3 类初始化器和实例初始化器 323
类初始化器(静态初始化器) 323
实例初始化器 326
小结 329
第11章 包 331
11-1 包和导入声明 332
包 332
类型导入声明 333
静态导入声明 337
11-2 包的声明 340
包 340
包和目录 341
唯一的包名 345
11-3 类和成员的访问属性 347
类的访问控制 347
成员的访问控制 348
小结 351
第12章 类的派生和多态 353
12-1 继承 354
银行账户类 354
派生和继承 355
派生和构造函数 357
类层次 362
Object类 364
增量编程 365
is-A关系和实例的引用 366
12-2 多态 370
方法的重写 370
多态 371
面向对象的三大要素 375
引用类型的转型 375
instanceof运算符 376
@Override注解 377
12-3 继承和访问属性 379
成员 379
final类和方法 380
重写和方法的访问属性 380
小结 385
第13章 抽象类 387
13-1 抽象类 388
抽象类 388
13-2 具有抽象性的非抽象方法的设计 393
图形类群的改进 393
文档注释和javadoc 404
小结 411
第14章 接口 413
14-1 接口 414
接口 414
类的派生和接口的实现 420
多个接口的实现 422
14-2 接口的派生 424
接口的派生 424
小结 426
第15章 字符和字符串 429
15-1 字符 430
字符 430
char型 432
15-2 字符串和String 434
字符串和字符串常量 434
String型 434
构造函数 437
方法 440
字符串的比较 446
format方法 448
15-3 字符串数组和命令行参数 450
字符串数组 450
命令行参数 453
小结 457
第16章 异常处理 459
16-1 什么是异常 460
什么是异常 460
捕获异常 461
try语句 463
传递异常 465
16-2 异常处理 467
异常类 467
检查异常和非检查异常 468
Throwable类 468
抛出和捕获异常 470
检查异常的处理 471
创建异常类 473
委托异常 475
再次抛出异常 477
小结 479
后记 481
参考文献 484