图书目录

目    录

第1章  概述 1

1.1  什么是Java语言 1

         1.1.1  Java语言的特点 1

         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应用程序 11

1.3  程序的编译和运行 13

         1.3.1  编译 13

         1.3.2  运行 14

1.4  常见错误 14

         1.4.1  编译时错误 14

         1.4.2  运行时错误 15

1.5  使用Java核心API文档 17

习题 19

第2章  标识符和数据类型 20

2.1  Java的基本语法单位 20

         2.1.1  空白、注释及语句 20

         2.1.2  关键字 22

         2.1.3  标识符 22

2.2  Java编码体例 23

2.3  Java的基本数据类型 24

         2.3.1  基本数据类型 24

         2.3.2  类型转换 27

         2.3.3  变量、说明和赋值 27

2.4  复合数据类型 29

         2.4.1  概述 29

         2.4.2  复合数据类型 29

2.5  类和对象的初步介绍 30

         2.5.1  Java中的面向对象技术 30

         2.5.2  Java中的类定义 32

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

         2.5.4  类定义示例 35

         2.5.5  创建一个对象 38

         2.5.6  引用变量的赋值 40

         2.5.7  默认初始化和null引用值 41

         2.5.8  术语概述 41

习题 42

第3章  表达式和流程控制语句 44

3.1  表达式 44

         3.1.1  操作数 44

         3.1.2  运算符 48

         3.1.3  表达式的提升和转换 52

         3.1.4  数学函数 52

3.2  流控制 53

         3.2.1  表达式语句 53

         3.2.2  块 54

         3.2.3  分支语句 54

         3.2.4  循环语句 59

         3.2.5  break语句与continue语句 62

         3.2.6  注释语句 64

3.3  简单的输入输出 64

习题 67

第4章  数组、向量和字符串 70

4.1  数组 70

         4.1.1  数组说明 70

         4.1.2  创建数组 71

         4.1.3  数组边界 74

         4.1.4  数组元素的引用 74

         4.1.5  多维数组 75

         4.1.6  数组复制 80

4.2  Vector类 81

         4.2.1  概述 81

         4.2.2  Vector类的构造方法 82

         4.2.3  Vector类对象的操作 82

         4.2.4  Vector类中的其他方法 84

         4.2.5  Vector类的使用举例 84

4.3  字符串类型 86

         4.3.1  字符串简述 86

         4.3.2  字符串说明及初始化 86

         4.3.3  字符串处理 87

         4.3.4  几个特殊处理 88

习题 90

第5章  进一步讨论对象和类 93

5.1  抽象数据类型 93

         5.1.1  概述 93

         5.1.2  定义方法 94

         5.1.3  按值传送 97

         5.1.4  方法重载 98

5.2  对象的构造和初始化 99

         5.2.1  显式成员初始化 100

         5.2.2  构造方法 100

         5.2.3  默认的构造方法 101

         5.2.4  构造方法重载 102

         5.2.5  finalize()方法 103

         5.2.6  this引用 103

5.3  子类 104

         5.3.1  is-a关系 105

         5.3.2  extends关键字 105

         5.3.3  单重继承 106

         5.3.4  转换对象 108

         5.3.5  方法自变量和异类集合 110

5.4  方法重写 111

         5.4.1  方法重写示例 111

         5.4.2  应用重写的规则 115

         5.4.3  调用父类构造方法 116

5.5  多态 117

5.6  Java包 118

         5.6.1  Java包的概念 119

         5.6.2  import语句 119

         5.6.3  目录层次关系及CLASSPATH环境变量 121

         5.6.4  访问权限与数据隐藏 122

         5.6.5  封装 123

5.7  类成员 124

         5.7.1  类变量 124

         5.7.2  类方法 126

5.8  final关键字 128

         5.8.1  终极类 128

         5.8.2  终极方法 129

         5.8.3  终极变量 130

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

习题 142

第6章  Java语言中的异常 145

6.1  异常 145

         6.1.1  引出异常 145

         6.1.2  异常的概念 147

         6.1.3  异常分类 148

6.2  异常处理 149

         6.2.1  try-catch块 150

         6.2.2  再讨论前面的示例 152

         6.2.3  公共异常 153

6.3  抛出异常 154

6.4  创建自己的异常 155

习题 157

第7章  Java语言的高级特性 158

7.1  泛型 158

         7.1.1  泛型数据类型 158

         7.1.2  接口中的泛型 158

         7.1.3  泛型类 159

         7.1.4  泛型方法 161

7.2  迭代器 162

         7.2.1  迭代器的基本概念 162

         7.2.2  Iterator接口 162

         7.2.3  Iterable接口 164

         7.2.4  使用迭代器示例 164

         7.2.5  Iterable和for-each循环 167

7.3  克隆 168

习题 176

第8章  Java的图形用户界面设计 178

8.1  AWT与Swing 178

8.2  容器 179

         8.2.1  顶层容器 179

         8.2.2  使用JFrame创建应用程序 180

         8.2.3  内容窗格 181

         8.2.4  面板 182

8.3  布局 183

         8.3.1  一个简单的示例 183

         8.3.2  FlowLayout布局管理器 185

         8.3.3  BorderLayout布局管理器 186

         8.3.4  GridLayout布局管理器 188

         8.3.5  CardLayout布局管理器 190

         8.3.6  BoxLayout布局管理器 192

         8.3.7  其他布局管理器 197

8.4  事件处理 198

         8.4.1  事件处理模型 198

         8.4.2  事件的种类 200

         8.4.3  一个较复杂的示例 202

         8.4.4  多监听程序 204

         8.4.5  事件适配器 205

习题 206

第9章  Swing组件 208

9.1  按钮 208

         9.1.1  普通按钮 208

         9.1.2  切换按钮、复选框及单选按钮 212

9.2  标签 218

9.3  组合框 221

9.4  列表 223

9.5  文本组件 229

         9.5.1  文本域 229

         9.5.2  文本区 234

9.6  菜单组件 236

         9.6.1  菜单栏 237

         9.6.2  菜单 237

         9.6.3  菜单项 238

         9.6.4  复选菜单项和单选菜单项 239

         9.6.5  弹出式菜单 242

9.7  对话框、标准对话框与文件对话框 245

         9.7.1  对话框 245

         9.7.2  标准对话框 246

         9.7.3  文件对话框 250

9.8  控制组件外观 253

         9.8.1  颜色 253

         9.8.2  字体 254

         9.8.3  绘图 256

习题 260

第10章  Java Applet 261

10.1  编写Applet 263

10.2  Applet的方法和Applet的生命周期 265

10.3  Applet的运行 266

     10.3.1  用于显示Applet的方法 266

     10.3.2  appletviewer 268

     10.3.3  HTML与<applet>标记 268

     10.3.4  Applet参数的读取 270

     10.3.5  Applet与URL 271

10.4  Applet中的多媒体处理 272

     10.4.1  在Applet中显示图像 272

     10.4.2  在Applet中播放声音 273

10.5  Applet的事件处理 275

10.6  Applet与普通应用程序的结合 276

习题 278

第11章  Java数据流 279

11.1  数据流的基本概念 279

     11.1.1  输入数据流 280

     11.1.2  输出数据流 281

11.2  基本字节数据流类 282

     11.2.1  文件数据流 282

     11.2.2  过滤流 284

     11.2.3  管道数据流 285

     11.2.4  对象流 287

     11.2.5  可持久化 288

11.3  基本字符流 291

     11.3.1  读者和写者 291

     11.3.2  缓冲区读者和缓冲区写者 292

11.4  文件的处理 296

     11.4.1  File类 296

     11.4.2  随机访问文件 299

习题 299

第12章  线程 301

12.1  线程和多线程 301

     12.1.1  线程的概念 301

     12.1.2  线程的结构 302

12.2  线程的状态 303

12.3  线程的创建 304

     12.3.1  创建线程的方法一——继承Thread类 305

     12.3.2  创建线程的方法二——实现Runnable接口 307

     12.3.3  关于两种创建线程方法的讨论 309

12.4  线程的启动 310

12.5  线程的调度 310

12.6  线程的基本控制 312

     12.6.1  结束线程 312

     12.6.2  检查线程 312

     12.6.3  挂起线程 312

12.7  同步问题 313

     12.7.1  线程间的通信 313

     12.7.2  线程间的资源互斥共享 315

     12.7.3  对象的锁定标志 317

     12.7.4  同步方法 318

12.8  死锁 319

12.9  线程交互——wait()和notify() 321

     12.9.1  问题的提出 321

     12.9.2  解决方法 322

     12.9.3  守护线程 323

     12.9.4  综合应用 324

习题 329

第13章  Java的网络功能 330

13.1  概述 330

13.2  使用InetAddress 332

13.3  统一资源定位器 333

     13.3.1  URL的概念 333

     13.3.2  URL的构造方法 334

     13.3.3  与URL相关的异常 335

     13.3.4  获取URL对象属性 335

     13.3.5  读入URL数据 336

13.4  Socket接口 339

     13.4.1  Socket的基本概念 340

     13.4.2  Socket通信的基本步骤 341

     13.4.3  Socket通信的程序设计 342

13.5  Java编程综合实例 344

习题 351

参考文献 352

  

  

·X·

·III·