Java是当前最流行的程序设计语言之一。
本书针对Java SE5开发包,内容涵盖了Java SE5最新特性,由浅入深地介绍了Java SE5的主要内容。通过本书,读者不仅可以全面掌握Java SE5,还能够掌握与程序设计相关的重要基础知识,如面向对象思想理论与分析设计方法、UML、程序算法设计、数据结构等。
本书除了帮助你轻松掌握Java程序设计语言及程序设计相关的知识之外,作者还将通过希赛网社区为你提供全方位的学习指导,使你在Java学习之路上成功前行。
封面图
目录
- 编写委员会
- 丛书介绍
- 前言
- 第1章 Java语言概述1
- 1.1 计算机语言的发展过程1
- 1.2 Java语言的产生4
- 1.3 Java语言与C和C++语言的异同4
- 1.4 Java语言的特点4
- 1.5 Java家族7
- 1.6 JDK安装与配置9
- 1.6.1 下载JDK9
- 1.6.2 安装JDK10
- 1.6.3 认识JDK11
- 1.6.4 设置Path与Classpath12
- 1.6.5 第一个Java程序13
- 1.7 Java集成开发环境(IDE)介绍16
- 1.7.1 IDE的选择16
- 1.7.2 Eclipse介绍16
- 1.8 小结19
- 1.9 习题20
- 第2章 Java程序概述21
- 2.1 Java词法结构21
- 2.1.1 标识符21
- 2.1.2 关键字22
- 2.1.3 运算符22
- 2.1.4 分隔符24
- 2.1.5 文字常量24
- 2.1.6 注释符24
- 2.2 Java程序组成结构24
- 2.2.1 Java应用程序组成24
- 2.2.2 Java编译单元组成24
- 2.2.3 类组成27
- 2.2.4 接口组成27
- 2.2.5 方法28
- 2.2.6 语句28
- 2.2.7 注释29
- 2.3 Java程序设计30
- 2.3.1 面向对象程序设计概述30
- 2.3.2 类的设计32
- 2.3.3 算法的设计32
- 2.4 小结40
- 2.5 习题40
- 第3章 数据类型41
- 3.1 Java数据类型概述41
- 3.2 常量与变量概述42
- 3.2.1 字面常量和符号常量42
- 3.2.2 变量43
- 3.3 整数类型44
- 3.4 实数类型46
- 3.5 布尔型47
- 3.6 字符型48
- 3.7 字符串50
- 3.8 类型转换51
- 3.8.1 表达式中的自动类型转换51
- 3.8.2 强制类型转换52
- 3.8.3 赋值语句中的自动类型转换53
- 3.9 数组53
- 3.9.1 一维数组54
- 3.9.2 多维数组57
- 3.10 小结61
- 3.11 习题61
- 第4章 运算符62
- 4.1 运算符与表达式概述62
- 4.2 算术运算符63
- 4.2.1 双目运算符63
- 4.2.2 单目运算符65
- 4.3 关系运算符66
- 4.4 布尔逻辑运算符68
- 4.4.1 “与”运算68
- 4.4.2 “或”运算69
- 4.4.3 “非”运算70
- 4.5 位运算符71
- 4.5.1 整数的二进制表示形式72
- 4.5.2 位逻辑运算72
- 4.5.3 移位运算76
- 4.5.4 byte型和short型的位运算78
- 4.5.5 位运算附加功能79
- 4.6 赋值运算符79
- 4.7 条件运算符80
- 4.8 其他运算符81
- 4.9 运算符优先级81
- 4.10 小结82
- 4.11 习题82
- 第5章 流程控制语句83
- 5.1 程序控制结构概述83
- 5.2 条件选择语句84
- 5.2.1 if语句84
- 5.2.2 switch语句89
- 5.3 循环语句93
- 5.3.1 for语句93
- 5.3.2 while语句96
- 5.3.3 do-while语句97
- 5.3.4 循环嵌套97
- 5.4 转向语句98
- 5.4.1 break语句98
- 5.4.2 continue语句100
- 5.4.3 标签语句101
- 5.5 返回语句105
- 5.6 小结106
- 5.7 习题107
- 第6章 面向对象基础108
- 6.1 概述108
- 6.1.1 面向对象基本概念108
- 6.1.2 类的特性110
- 6.1.3 类之间的关系112
- 6.1.4 对象的特性114
- 6.2 UML基础115
- 6.2.1 概述115
- 6.2.2 用例模型116
- 6.2.3 静态结构图118
- 6.2.4 行为图122
- 6.2.5 交互图125
- 6.2.6 实现图126
- 6.3 面向对象系统实例127
- 6.3.1 用例设计127
- 6.3.2 系统模块设计130
- 6.3.3 静态模型设计131
- 6.3.4 动态模型设计134
- 6.4 小结136
- 6.5 习题137
- 第7章 面向对象Java实现138
- 7.1 类138
- 7.1.1 类的定义138
- 7.1.2 成员域定义139
- 7.1.3 方法的定义142
- 7.1.4 方法重载146
- 7.1.5 构造方法147
- 7.1.6 finalize方法148
- 7.2 对象149
- 7.2.1 创建对象149
- 7.2.2 对象的交互152
- 7.2.3 垃圾收集158
- 7.3 包158
- 7.3.1 包的定义158
- 7.3.2 包中编译单元的导入159
- 7.3.3 类中静态成员导入160
- 7.4 继承160
- 7.4.1 类的继承160
- 7.4.2 super关键字162
- 7.4.3 覆盖与多态164
- 7.4.4 抽象类与抽象方法167
- 7.4.5 final修饰符168
- 7.5 接口168
- 7.5.1 接口定义168
- 7.5.2 接口实现169
- 7.5.3 接口应用与多态171
- 7.6 枚举176
- 7.6.1 枚举定义177
- 7.6.2 枚举类型应用179
- 7.6.3 接口实现181
- 7.7 对象类型转换181
- 7.7.1 对象类型的隐式转换181
- 7.7.2 对象类型的强制转换182
- 7.7.3 对象类型识别183
- 7.8 嵌套类184
- 7.8.1 静态嵌套类184
- 7.8.2 实例嵌套类185
- 7.8.3 局部内部类187
- 7.8.4 匿名类189
- 7.8.5 接口中的嵌套类191
- 7.8.6 枚举中的嵌套类191
- 7.8.7 类中的嵌套枚举192
- 7.9 类关联193
- 7.10 小结194
- 7.11 习题195
- 第8章 Java类库介绍196
- 8.1 概述196
- 8.2 Java字符串处理197
- 8.2.1 字符串操作197
- 8.2.2 利用valueOf()方法实现数据转换200
- 8.2.3 StringBuffer200
- 8.3 java.lang包202
- 8.3.1 类型包装器202
- 8.3.2 自动装箱和拆箱202
- 8.3.3 Process与Runtime204
- 8.3.4 System207
- 8.3.5 Object及clone()和Cloneable接口210
- 8.3.6 Class与ClassLoader211
- 8.3.7 Package213
- 8.4 java.util包中的集合类214
- 8.4.1 类集概述214
- 8.4.2 类集接口214
- 8.4.3 类集类216
- 8.4.4 通过迭代函数访问类集219
- 8.4.5 映射接口220
- 8.4.6 映射类222
- 8.4.7 数组Arrays223
- 8.4.8 JDK1.4之前的类和接口224
- 8.5 java.util包中的其他类232
- 8.5.1 StringTokenizer232
- 8.5.2 Timer和TimerTask233
- 8.6 小结234
- 8.7 习题235
- 第9章 异常和断言236
- 9.1 异常处理概述236
- 9.2 异常处理方法237
- 9.2.1 未被捕获的异常237
- 9.2.2 try块—捕获异常238
- 9.2.3 catch块—处理异常239
- 9.2.4 finally块—异常清理239
- 9.2.5 使用多重catch语句241
- 9.2.6 嵌套try语句242
- 9.2.7 throw语句—产生异常243
- 9.2.8 throws子句—定义方法抛出
- 异常244
- 9.3 常用的Java异常类245
- 9.4 自定义异常类246
- 9.5 断言247
- 9.5.1 断言的语法和语义248
- 9.5.2 断言程序的编译248
- 9.5.3 断言程序的运行248
- 9.5.4 断言程序的使用249
- 9.6 小结250
- 9.7 习题250
- 第10章 多线程251
- 10.1 概述251
- 10.1.1 线程基础251
- 10.1.2 线程的状态252
- 10.2 创建线程253
- 10.2.1 Thread类和Runnable接口253
- 10.2.2 实现Runnable接口创建线程254
- 10.2.3 扩展Thread类创建线程256
- 10.3 实现多线程257
- 10.3.1 主线程257
- 10.3.2 多线程的创建258
- 10.3.3 使用isAlive()和join()方法260
- 10.3.4 线程的暂停和恢复262
- 10.3.5 线程的优先级266
- 10.4 线程的同步和死锁267
- 10.4.1 线程的同步268
- 10.4.2 线程的死锁269
- 10.5 小结270
- 10.6 习题270
- 第11章 泛型271
- 11.1 泛型简介271
- 11.2 泛型类272
- 11.2.1 泛型类声明272
- 11.2.2 泛型类体定义276
- 11.2.3 泛型的实例化277
- 11.2.4 泛型的原生类型278
- 11.2.5 泛型实例的运行时类型279
- 11.2.6 通配符281
- 11.2.7 泛型和继承284
- 11.3 泛型接口286
- 11.3.1 泛型接口定义286
- 11.3.2 泛型接口实现287
- 11.4 泛型和数组288
- 11.5 泛化方法289
- 11.6 小结291
- 11.7 习题291
- 第12章 Java虚拟机292
- 12.1 Java虚拟机概述292
- 12.2 Java虚拟机的生命周期293
- 12.3 Java虚拟机数据类型293
- 12.4 Java虚拟机指令系统294
- 12.4.1 装载和存储指令295
- 12.4.2 运算指令296
- 12.4.3 类型转换指令296
- 12.4.4 对象创建和操纵297
- 12.4.5 操作数栈管理指令297
- 12.4.6 控制转移指令297
- 12.4.7 方法调用返回指令297
- 12.4.8 抛出和异常处理指令298
- 12.4.9 finally实现指令298
- 12.4.10 同步指令298
- 12.5 Java虚拟机体系结构298
- 12.5.1 类加载器子系统299
- 12.5.2 运行时数据区301
- 12.5.3 执行引擎310
- 12.5.4 本地方法接口313
- 12.6 小结313
- 12.7 习题314
- 第13章 Java流与文件操作315
- 13.1 概述315
- 13.2 字节流315
- 13.2.1 基本输入/输出流315
- 13.2.2 文件输入/输出流317
- 13.2.3 缓存输入/输出流319
- 13.2.4字节数组输入/输出流319
- 13.2.5打印流321
- 13.2.6 过滤输入/输出流321
- 13.3 字符流324
- 13.3.1 Reader和Writer325
- 13.3.2 缓存Reader和缓存Writer325
- 13.3.3 InputStreamReader和
- OutputStreamWriter327
- 13.3.4 FileReader和FileWriter329
- 13.3.5 PrintWriter329
- 13.4 File类330
- 13.5 文件的随机输入/输出332
- 13.6 对象序列化334
- 13.7 小结336
- 13.8 习题337
- 第14章 Java GUI编程338
- 14.1 GUI编程概述338
- 14.1.1 AWT组件338
- 14.1.2 Swing组件340
- 14.1.3 Java图形界面设计一般过程341
- 14.2 常用容器341
- 14.2.1 框架341
- 14.2.2 面板343
- 14.2.3 小程序344
- 14.2.4 Swing容器344
- 14.3 常用GUI 组件介绍345
- 14.3.1 标签、文本框、密码框和按钮345
- 14.3.2 单选按钮、复选框、列表框和
- 组合框348
- 14.3.3 文本域、菜单和工具栏351
- 14.3.4 其他AWT组件355
- 14.4 布局管理356
- 14.5 事件处理363
- 14.5.1 Java事件模型363
- 14.5.2 事件类型364
- 14.5.3 AWT事件及其相应的监听器
- 接口365
- 14.5.4 Swing事件及其相应的监听器
- 接口366
- 14.5.5 动作事件示例366
- 14.5.6 键盘事件示例369
- 14.5.7 鼠标事件示例370
- 14.6 高级 GUI 组件介绍371
- 14.6.1 对话框371
- 14.6.2 表格373
- 14.6.3 树378
- 14.7小结379
- 14.8习题380
- 第15章 Java小应用程序Applet381
- 15.1 概述381
- 15.2 Applet基本结构381
- 15.3 Applet应用示例382
- 15.3.1 第一个Applet示例382
- 15.3.2 第二个Applet示例384
- 15.4 Applet安全性386
- 15.5 Applet与Application388
- 15.6 小结388
- 15.7 习题388
- 第16章 网络编程389
- 16.1 概述389
- 16.1.1 C/S与B/S390
- 16.1.2 IP地址和域名系统390
- 16.2 使用URL方式进行网络连接391
- 16.3 基于连接的流式套接字通信394
- 16.3.1 概述394
- 16.3.2 Socket类和ServerSocket类394
- 16.3.3 基于Socket的C/S程序395
- 16.4 基于无连接的数据报通信399
- 16.5 小结403
- 16.6 习题403
- 第17章 数据库编程404
- 17.1 JDBC概述404
- 17.2 数据库基本操作404
- 17.2.1 关系数据库术语404
- 17.2.2 SQL基础知识405
- 17.2.3 创建数据库和数据表405
- 17.2.4 数据更新406
- 17.2.5 数据查询407
- 17.3 Java数据库连接409
- 17.4 Java数据库基本操作410
- 17.4.1 注册数据库驱动程序410
- 17.4.2 获得数据库连接410
- 17.4.3 发送和执行SQL语句411
- 17.5 预处理与存储过程416
- 17.5.1 预处理与存储过程416
- 17.5.2 创建存储过程416
- 17.5.3 执行存储过程417
- 17.6 数据库元数据操作419
- 17.7 小结421
- 17.8 习题421