内容简介
第1章 Java语言与面向对象的程序设计
1.1 Java语言简介
1.1.1 Java语言的发展
1.1.2 Java三大平台
1.1.3 Java语言的特点
1.1.4 Java和C、C+++比较
1.2 面向对象程序设计
1.2.1 面向对象概述
1.2.2 对象、类与实体
1.2.3 对象的状态与行为
1.2.4 对象的关系
1.2.5 面向对象的软件开发过程
习题
第2章 简单的Java程序
2.1 Application与Applet程序
2.1.1 Application程序
2.1.2 Applet程序
2.1.3 Java程序的基本构成
2.2 程序的编辑、编译与运行
2.2.1 Java工具包JDK
2.2.2 Application的编辑、编译与运行
2.2.3 Applet的编辑、编译与运行
2.2.4 使用iar打包程序
2.3 Java程序中的基本输入与输出
2.3.1 字符界面的输入与输出
2.3.2 Applet图形界面输入与输出
2.3.3 Application图形界面输入与输出
2.3.4 同时作为Application与Applet的程序
2.4 Java集成开发环境
2.4.1 几种辅助工具的使用
2.4.2 几种集成工具的使用
2.4.3 建构工具及代码混淆
习题
第3章 数据运算、流程控制和数组
3.1 数据类型、变量与常量
3.1.1 数据类型
3.1.2 标识符
3.1.3 常量
3.1.4 变量
3.1.5 程序的注释
3.2 运算符与表达式
3.2.1 算术运算符
3.2.2 关系运算符
3.2.3 逻辑运算符
3.2.4 位运算符
3.2.5 赋值与强制类型转换
3.2.6 条件运算符
3.2.7 表达式及运算的优先级、结合性
3.3 流程控制语句
3.3.1 结构化程序设计的三种基本流程
3.3.2 简单语句
3.3.3 分支语句
3.3.4 循环语句
3.3.5 跳转语句
3.4 数组
3.4.1 一维数组
3.4.2 多维数组
3.4.3 数组与增强的for语句
3.4.4 数组的复制
习题
第4章 类、包和接口
4.1 类、字段、方法
4.1.1 定义类中的字段和方法
4.1.2 构造方法与对象的创建
4.1.3 使用对象
4.1.4 方法的重载
4.1.5 this的使用
4.2 类的继承
4.2.1 派生子类
4.2.2 字段的继承、隐藏与添加
4.2.3 方法的继承、覆盖与添加
4.2.4 super的使用
4.2.5 父类对象与子类对象的转换
4.3 包
4.3.1 package语句
4.3.2 import语句
4.3.3 编译和运行包中的类
4.3.4 CLASSPATH变量
4.4 访问控制符
4.4.1 成员的访问控制符
4.4.2 类的访问控制符
4.4.3 setter与getter
4.4.4 构造方法的隐藏
4.5 非访问控制符
4.5.1 static
4.5.2 final
4.5.3 abstract
4.5.4 其他修饰符
4.5.5 一个应用模式——单子
4.6 接口
4.6.1 接口的概念
4.6.2 定义接口
4.6.3 实现接口
4.6.4 对接口的引用
4.6.5 Java8对接口的扩展
4.7 枚举
4.7.1 枚举的基本用法
4.7.2 枚举的深入用法
习题
第5章 深入理解Java语言
5.1 变量及其传递
5.1.1 基本类型变量与引用型变量
5.1.2 字段变量与局部变量
5.1.3 变量的传递
5.1.4 变量的返回
5.1.5 不定长参数变量
5.2 多态与虚方法调用
5.2.1 上溯造型
5.2.2 虚方法调用
5.2.3 动态类型确定
5.3 对象构造与初始化
5.3.1 调用本类或父类的构造方法
5.3.2 构造方法的执行过程
5.3.3 构造方法内部调用的方法的多态性
5.3.4 实例初始化与静态初始化
5.4 对象清除与垃圾回收
5.4.1 对象的自动清除
5.4.2 System.gc()方法
5.4.3 finalize()方法
5.5 内部类与匿名类
5.5.1 内部类
5.5.2 方法中的局部类及匿名类
5.5.3 匿名类
5.6 Lambda表达式与函数式接口
5.6.1 Lambda表达式的书写与使用
5.6.2 函数式接口
5.6.3 高阶函数
5.7 注解与反射
5.7.1 注解的定义与使用
5.7.2 反射
习题
第6章 异常处理
6.1 异常处理
6.1.1 异常的概念
6.1.2 捕获和处理异常
6.1.3 应用举例
6.2 创建用户自定义异常类
6.2.1 自定义异常类
6.2.2 重抛异常及异常链接
6.3 异常与资源管理
6.3.1 使用finally
6.3.2 使用try…with…resource
6.4 断言及程序的测试
6.4.1 使用assert
6.4.2 程序的测试及JUnit
习题
第7章 工具类及常用算法
7.1 Java语言基础类
7.1.1 JavaAPI
7.1.2 Object类
7.1.3 基本数据类型的包装类
7.1.4 Math类
7.1.5 System类
7.2 字符串和日期
7.2.1 String类
7.2.2 StringBuffer类
7.2.3 StringTokenizer类
7.2.4 日期相关类
7.3 集合类
7.3.1 集合与CollectionAPI
7.3.2 Set接口及HashSet、TreeSet类
7.3.3 List接口及ArrayList,Vector类
7.3.4 栈与队列
7.3.5 键-值集合及Map接口
7.4 泛型及集合遍历
7.4.1 泛型
7.4.2 装包与拆包
7.4.3 Iterator及Enumeration
7.4.4 集合与增强的for语句
7.5 排序与查找
7.5.1 使用Arrays类
7.5.2 使用Collections类
7.5.3 编写排序程序
7.6 遍试、迭代、递归及回溯
7.6.1 遍试
7.6.2 迭代
7.6.3 递归
7.6.4 回溯
习题
第8章 线程与并行编程
8.1 线程的创建与运行
8.1.1 Java中的线程
8.1.2 创建线程对象的两种方法
8.1.3 多线程
8.1.4 使用Timer类
8.1.5 应用举例
8.2 线程的控制与同步
8.2.1 线程的状态与生命周期
8.2.2 对线程的基本控制
8.2.3 synchronized关键字
8.2.4 线程间的同步控制
8.3 并行API
8.3.1 并行集合
8.3.2 原子变量
8.3.3 读写锁
8.3.4 Executor与Future
8.4 流式操作
8.4.1 使用流的基本方法
8.4.2 流及操作的种类
习题
第9章 流、文件及基于文本的应用
9.1 流式输入与输出
9.1.1 字节流与字符流
9.1.2 节点流和处理流
9.1.3 标准输入和标准输出
9.1.4 文本文件及二进制文件流应用示例
9.1.5 对象序列化
9.2 文件及目录
9.2.1 文件与目录管理
9.2.2 使用NIO2文件系统API
9.2.3 文件输入与输出流
9.2.4 RandomAccessFile类
9.3 基于文本的应用
9.3.1 Java Application命令行参数
9.3.2 环境参数
9.3.3 处理Deprecated的API
9.4 正则表达式
9.4.1 正则表达式的基本元素
9.4.2 Pattern及Matcher
9.5 XML处理
9.5.1 XML基本概念
9.5.2 XML编程
习题
第10章 图形用户界面
10.1 界面组件
10.1.1 图形用户界面概述
10.1.2 界面组件分类
10.1.3 Component的方法
10.2 布局管理
10.2.1 FlowLayout
10.2.2 BorderLayout
10.2.3 CardLayout
10.2.4 GridLayout
10.2.5 GridBagLayout
10.2.6 通过嵌套来设定复杂的布局
10.3 事件处理
10.3.1 事件及事件监听器
10.3.2 事件监听器的注册
10.3.3 事件适配器
10.3.4 内部类及匿名类在事件处理中的应用
10.4 常用组件的使用
10.4.1 标签、按钮与动作事件
10.4.2 文本框、文本区域与文本事件
10.4.3 单、复选按钮,列表与选择事件
10.4.4 调整事件与滚动条
10.4.5 鼠标、键盘事件与画布
10.4.6 Frame与窗口事件
10.4.7 Panel与容器事件
10.4.8 组件事件、焦点事件与对话框
10.5 绘图、图像和动画
10.5.1 绘制图形
10.5.2 显示文字
10.5.3 控制颜色
10.5.4 显示图像及实现动画
10.6 Applet
10.6.1 Applet的基本工作原理
10.6.2 Applet类
10.6.3 HTML文件参数传递
10.6.4 Applet的局限
10.7 Swing组件的使用
10.7.1 Swing的特点
10.7.2 几种Swing组件介绍
10.7.3 Swing组件与线程
10.8 基于GUI的应用程序
10.8.1 使用可视化设计工具
10.8.2 菜单的定义与使用
10.8.3 菜单、工具条及对话框的应用
习题
第11章 网络、多媒体和数据库编程
11.1 Java网络编程
11.1.1 使用URL
11.1.2 用Java实现底层网络通信
11.1.3 实现多线程服务器程序
11.1.4 Java的E-mail编程
11.1.5 使用第三方的库
11.2 多媒体编程
11.2.1 在Applet中获取声音与图像
11.2.2 Java图像编程
11.2.3 Java声音编程
11.2.4 JMF简介
11.3 Java数据库编程
11.3.1 Java访问数据库的基本步骤
11.3.2 使用JTable显示数据表
11.4 Java EE及Java ME简介
11.4.1 Java EE简介
11.4.2 Java ME简介
习题
附录A Java语言各版本增加的重要特性
参考文献