图书目录

概述1.1 什么是Java语言1

1.1.1 Java语言的特点2

1.1.2 Java的三层架构3

1.1.3 Java语言的目标4

1.1.4 Java虚拟机4

1.1.5 垃圾收集5

1.1.6 代码安全5

1.2 一个基本的Java应用程序8

1.2.1 开发环境的安装8

1.2.2 Java应用程序9

1.3 程序的编译和运行11

1.3.1 编译11

1.3.2 运行11

1.4 常见错误12

1.4.1 编译时错误12

1.4.2 运行时错误13

1.5 使用Java核心API文档14

习题17

标识符和数据类型2.1 Java的基本语法单位18

2.1.1 空白、注释及语句18

2.1.2 关键字20

2.1.3 标识符20

2.2 Java编码体例21

2.3 Java的基本数据类型22

2.3.1 基本数据类型22

2.3.2 类型转换24

2.3.3 变量、说明和赋值25

2.4 复合数据类型26

2.4.1 概述26

2.4.2 Java的复合数据类型27

2.5 类和对象的初步介绍27

2.5.1 Java中的面向对象技术27

2.5.2 Java中的类定义29

2.5.3 Java中与OOP有关的关键字30

2.5.4 类定义示例33

2.5.5 创建一个对象35

2.5.6 引用变量的赋值38

2.5.7 自动初始化和null引用值39

2.5.8 术语概述39

习题40

表达式和流程控制语句3.1 表达式42

3.1.1 操作数42

3.1.2 运算符46

3.1.3 表达式的提升和转换48

3.1.4 数学函数51

3.2 流控制51

3.2.1 表达式语句51

3.2.2 块52

3.2.3 分支语句52

3.2.4 循环语句57

3.2.5 break与continue语句60

3.2.6 注释语句62

3.3 简单的输入输出63

习题66

数组、向量和字符串4.1 数组69

4.1.1 数组说明69

4.1.2 创建数组70

4.1.3 数组边界73

4.1.4 数组元素的引用73

4.1.5 多维数组74

4.1.6 数组复制79

4.2 Vector类80

4.2.1 概述81

4.2.2 Vector类的构造方法81

4.2.3 Vector类对象的操作82

4.2.4 Vector类中的其他方法83

4.2.5 Vector类的使用举例84

4.3 字符串类型86

4.3.1 字符串简述86

4.3.2 字符串说明及初始化86

4.3.3 字符串处理86

4.3.4 几个特殊处理88

习题90

进一步讨论对象和类5.1 抽象数据类型92

5.1.1 概述92

5.1.2 定义方法93

5.1.3 按值传送96

5.1.4 重载方法名98

5.2 对象的构造和初始化99

5.2.1 显式成员初始化99

5.2.2 构造方法99

5.2.3 默认的构造方法101

5.2.4 构造方法重载101

5.2.5 finalize()方法102

5.3 this引用103

5.4 子类103

5.4.1  "is a”关系104

5.4.2 extends关键字105

5.4.3 单重继承106

5.4.4 多态性108

5.4.5 方法自变量和异类集合108

5.4.6 instanceof运算符109

5.4.7 转换对象110

5.5 方法重写111

5.5.1 方法重写示例111

5.5.2 应用重写的规则115

5.5.3 父类构造方法调用117

5.6 Java包118

5.6.1 Java包的概念118

5.6.2 import语句119

5.6.3 目录层次关系及classpath环境变量120

5.6.4 访问权限与数据隐藏122

5.6.5 封装123

5.7 类成员124

5.7.1 类变量124

5.7.2 类方法126

5.8 关键字final128

5.8.1 终极类128

5.8.2 终极方法129

5.8.3 终极变量129

5.9 抽象类131

5.10 接口133

5.10.1 接口的定义133

5.10.2 接口的实现134

5.11 内部类137

5.11.1 内部类的概念137

5.11.2 匿名类139

5.11.3 内部类的工作方式140

5.12 包装类141

5.13 过时信息142

习题145

Java语言中的异常6.1 异常147

6.2 异常示例150

6.3 异常处理150

6.3.1 try, catch和finally语句151

6.3.2 再讨论前面的示例151

6.3.3 公共异常152

6.4 异常分类153

6.5 抛出154

6.6 创建自己的异常154

习题156

Java的图形用户界面设计7.1 AWT与Swing157

7.2 容器158

7.2.1 顶层容器158

7.2.2 使用JFrame创建一个应用程序159

7.2.3 内容窗格159

7.2.4 面板161

7.3 布局162

7.3.1 一个简单的例子162

7.3.2 FlowLayout布局管理器164

7.3.3 BorderLayout布局管理器166

7.3.4 GridLayout布局管理器167

7.3.5 CardLayout布局管理器169

7.3.6 BoxLayout布局管理器171

7.3.7 其他布局管理器176

7.4 事件处理177

7.4.1 事件处理模型177

7.4.2 事件的种类179

7.4.3 一个较复杂的例子181

7.4.4 多监听程序183

7.4.5 事件适配器183

习题185

Swing组件8.1 按钮187

8.1.1 普通按钮187

8.1.2 切换按钮、复选按钮及单选按钮192

8.2 标签197

8.3 组合框200

8.4 列表203

8.5 文本组件208

8.5.1 文本域209

8.5.2 文本区213

8.6 菜单组件216

8.6.1 菜单栏216

8.6.2 菜单217

8.6.3 菜单项217

8.6.4 复选菜单项和单选菜单项219

8.6.5 弹出式菜单222

8.7 对话框、标准对话框与文件对话框225

8.7.1 对话框225

8.7.2 标准对话框226

8.7.3 文件对话框231

8.8 控制组件外观234

8.8.1 颜色234

8.8.2 字体235

8.8.3 绘图236

习题240

Java Applet9.1 编写Applet244

9.2 Applet的方法和Applet的生命周期246

9.3 Applet的运行247

9.3.1 用于显示Applet的方法247

9.3.2 appletviewer249

9.3.3 HTML与〈applet〉标记250

9.3.4 Applet参数的读取251

9.3.5 Applet与URL253

9.4 在Applet中的多媒体处理254

9.4.1 在Applet中显示图像254

9.4.2 在Applet中播放声音255

9.5 Applet的事件处理257

9.6 Applet与普通应用程序的结合258

习题260

Java数据流10.1 数据流的基本概念261

10.1.1 输入数据流262

10.1.2 输出数据流263

10.2 基本字节数据流类264

10.2.1 文件数据流264

10.2.2 过滤流266

10.2.3 管道数据流268

10.2.4 对象流269

10.2.5 可持久化270

10.3 基本字符流273

10.3.1 读者和写者273

10.3.2 缓冲区读者和缓冲区写者275

10.4 文件的处理279

10.4.1 File类279

10.4.2 随机访问文件281

习题282

线程11.1 线程和多线程284

11.1.1 线程的概念284

11.1.2 线程的结构285

11.2 线程的状态286

11.3 创建线程287

11.3.1 创建线程的方法一--继承Thread类288

11.3.2 创建线程的方法二--实现Runnable

接口290

11.3.3 关于两种创建线程方法的讨论292

11.4 线程的启动293

11.5 线程的调度293

11.6 线程的基本控制295

11.6.1 结束线程295

11.6.2 检查线程296

11.6.3 挂起线程296

11.7 同步问题298

11.7.1 线程间的通信298

11.7.2 线程间的资源互斥共享300

11.7.3 对象的锁定标志302

11.7.4 同步方法303

11.8 死锁304

11.9 线程交互--wait()和notify()306

11.9.1 问题的提出306

11.9.2 解决方法307

11.9.3 守护线程308

11.9.4 综合应用309

习题314

Java的网络功能12.1 概述316

12.2 使用InetAddress318

12.3 统一资源定位器319

12.3.1 URL的概念319

12.3.2 URL的构造方法320

12.3.3 与URL相关的异常321

12.3.4 获取URL对象属性321

12.3.5 读入URL数据322

12.4 Socket接口325

12.4.1 Socket的基本概念326

12.4.2 Socket通信的基本步骤328

12.4.3 Socket通信的程序设计328

12.5 Java编程综合实例330

习题338

参考文献339