Java是近年来最流行的计算机程序设计语言。本书全面系统地介绍Java语言的特点及应用技术,内容上以Java的基础程序设计、面向对象程序设计和事件处理为三大主线,利用浅显易懂的语言、丰富简单的实例,完整地介绍了Java面向对象程序设计的要点和难点。本书共分17章,其中第1~5章介绍程序设计基础;第6~11章介绍面向对象程序设计;第12章和第13章介绍界面设计和事件处理;第14章介绍绘图程序设计;第15章介绍Applet程序设计;第16章介绍Java数据库编程;第17章介绍Java网络编程。
本教材在取材上特别注意教材的体系,其特色是结构合理、概念清楚、思路清晰、循序渐进、通俗易懂。在结构上特别注重前后内容的连贯性,力求抓住关键、突出重点、分解难点,体现“理论性、实用性、技术性”三者相结合的编写特色。对每个知识点不但能告诉读者要怎么做,而且还要告诉读者这样做的原因和道理。
本书可以作为高等院校计算机、信息管理与信息系统及其相关专业的教学用书,也可作为各学校程序设计公共选修课的教材,同时也可作为职业教育的培训用书和Java初学者的入门教材,或为具有一定Java编程经验的开发人员学习使用。
目录
- 第1章 Java语言概述 1
- 1.1 Java语言的诞生与发展 1
- 1.2 Java语言的特点 2
- 1.3 Java技术简介 4
- 1.4 Java虚拟机 5
- 1.5 Java程序种类和结构 6
- 本章小结 8
- 习题1 9
- 第2章 Java语言开发环境 10
- 2.1 Java开发工具 10
- 2.1.1 JDK的下载与安装 11
- 2.1.2 设置JDK的操作环境 13
- 2.2 JDK帮助文档下载与安装 15
- 2.2.1 下载JDK帮助文档 15
- 2.2.2 安装JDK帮助文档 16
- 2.3 JDK的使用 17
- 2.3.1 编译与运行Java应用程序 17
- 2.3.2 编译与运行Java小程序 19
- 本章小结 21
- 习题2 22
- 第3章 Java语言基础 23
- 3.1 数据类型 23
- 3.2 关键字与标识符 26
- 3.3 常量 27
- 3.4 变量 29
- 3.5 数据类型转换 30
- 3.6 从键盘输入数据 33
- 3.7 运算符与表达式 38
- 3.7.1 算术运算符 38
- 3.7.2 关系运算符 39
- 3.7.3 逻辑运算符 40
- 3.7.4 位运算符 41
- 3.7.5 赋值运算符 41
- 3.7.6 条件运算符 42
- 3.7.7 字符串运算符 43
- 3.7.8 表达式及运算符的优先级、结合性 43
- 本章小结 44
- 习题3 45
- 第4章 流程控制 46
- 4.1 语句与复合语句 46
- 4.2 顺序结构 47
- 4.3 分支结构 47
- 4.3.1 if条件语句 48
- 4.3.2 switch 选择语句 50
- 4.4 循环结构 52
- 4.4.1 while语句 53
- 4.4.2 do-while语句 55
- 4.4.3 for循环语句 58
- 4.4.4 多重循环 59
- 4.5 循环中的跳转语句 60
- 4.5.1 break语句 60
- 4.5.2 continue语句 61
- 4.5.3 return语句 61
- 本章小结 61
- 习题4 62
- 第5章 数组与字符串 63
- 5.1 数组的基本概念 63
- 5.2 一维数组 64
- 5.2.1 一维数组的定义 64
- 5.2.2 一维数组元素的访问 66
- 5.2.3 一维数组的初始化及应用 67
- 5.3 foreach语句与数组 70
- 5.4 多维数组 70
- 5.4.1 二维数组 71
- 5.4.2 三维以上的多维数组 74
- 5.5 字符串 75
- 5.5.1 字符串变量的创建 75
- 5.5.2 String类的常用方法 76
- 本章小结 78
- 习题5 79
- 第6章 类与对象 80
- 6.1 类的基本概念 80
- 6.2 定义类 81
- 6.3 对象的创建与使用 84
- 6.3.1 创建对象 84
- 6.3.2 对象的使用 85
- 6.3.3 在类定义内调用方法 88
- 6.4 参数的传递 90
- 6.4.1 以变量为参数调用方法 90
- 6.4.2 以数组作为参数或返回值的方法 调用 92
- 6.5 匿名对象 94
- 本章小结 94
- 习题6 95
- 第7章 Java语言类的特性 96
- 7.1 类的私有成员与公共成员 96
- 7.1.1 私有成员 96
- 7.1.2 公共成员 97
- 7.1.3 缺省访问控制符 98
- 7.2 方法的重载 99
- 7.3 构造方法 100
- 7.3.1 构造方法的作用与定义 100
- 7.3.2 默认的构造方法 102
- 7.3.3 构造方法的重载 102
- 7.3.4 从一个构造方法调用另一个构造 方法 103
- 7.3.5 公共构造方法与私有构造方法 105
- 7.4 静态成员 106
- 7.4.1 实例成员 106
- 7.4.2 静态变量 107
- 7.4.3 静态方法 109
- 7.4.4 静态初始化器 110
- 7.5 对象的应用 111
- 7.5.1 对象的赋值与比较 111
- 7.5.2 引用变量作为方法的返回值 114
- 7.5.3 类类型的数组 114
- 7.5.4 以对象数组为参数进行方法调用 115
- 本章小结 116
- 习题7 117
- 第8章 继承、抽象类和接口 118
- 8.1 类的继承 118
- 8.1.1 子类的创建 119
- 8.1.2 在子类中访问父类的成员 123
- 8.1.3 覆盖 124
- 8.1.4 不可被继承的成员与最终类 127
- 8.1.5 Object类 128
- 8.2 抽象类 132
- 8.2.1 抽象类与抽象方法 132
- 8.2.2 抽象类的应用 133
- 8.3 接口 134
- 8.3.1 接口的定义 135
- 8.3.2 接口的实现与引用 135
- 8.3.3 接口的继承 137
- 8.3.4 利用接口实现类的多重继承 138
- 8.4 内部类与匿名类 139
- 8.4.1 内部类 139
- 8.4.2 匿名内部类 141
- 8.5 包 143
- 8.5.1 包的概念 143
- 8.5.2 使用package语句创建包 143
- 8.5.3 Java语言中的常用包 144
- 8.5.4 Java语言中几个常用的类 146
- 8.5.5 利用import语句引用Java 定义的包 149
- 8.5.6 Java程序结构 150
- 8.6 Java语言的垃圾回收 150
- 本章小结 151
- 习题8 153
- 第9章 异常处理 154
- 9.1 异常处理的基本概念 154
- 9.1.1 错误与异常 154
- 9.1.2 Java语言的异常处理机制 155
- 9.2 异常处理类 156
- 9.3 异常的处理 158
- 9.4 抛出异常 162
- 9.5 自定义异常类 168
- 本章小结 170
- 习题9 170
- 第10章 Java语言的输入输出
- 与文件处理 171
- 10.1 Java语言的输入输出类库 171
- 10.1.1 流的概念 171
- 10.1.2 输入输出流类库 173
- 10.2 使用InputStream和OutputStream 流类 174
- 10.2.1 基本的输入输出流 175
- 10.2.2 输入输出流的应用 176
- 10.3 使用Reader和Writer流类 185
- 10.3.1 使用FileReader类读取文件 186
- 10.3.2 使用FileWriter类写入文件 187
- 10.3.3 使用BufferedReader类读取文件 188
- 10.3.4 使用BufferedWriter类写入文件 189
- 10.4 文件的处理与随机访问 191
- 10.4.1 Java语言对文件与文件夹的管理 191
- 10.4.2 对文件的随机访问 193
- 本章小结 196
- 习题10 197
- 第11章 多线程 198
- 11.1 线程的概念 198
- 11.1.1 程序、进程、多任务与线程 199
- 11.1.2 线程的状态与生命周期 200
- 11.1.3 线程的调度与优先级 202
- 11.2 Java的Thread线程类与Runnable 接口 203
- 11.2.1 利用Thread类的子类来创建线程 203
- 11.2.2 用Runnable接口来创建线程 206
- 11.2.3 线程间的数据共享 208
- 11.3 多线程的同步控制 211
- 11.4 线程之间的通信 216
- 本章小结 218
- 习题11 220
- 第12章 图形界面设计 221
- 12.1 图形用户界面概述 221
- 12.2 图形用户界面工具包——Swing 222
- 12.2.1 Swing组件分类 222
- 12.2.2 颜色类Color、字体类Font与
- 图像图标类ImageIcon 231
- 12.3 创建组件 233
- 12.3.1 标签JLabel 233
- 12.3.2 命令按钮JButton、复选框JCheckBox 和单选按钮JRadioButton 236
- 12.3.3 文本编辑组件JTextField、JPasswordField、JTextArea与 滚动窗格JScrollPane 239
- 12.3.4 选项卡窗格JTabbedPane 243
- 12.4 布局管理器 245
- 12.4.1 流式布局管理器FlowLayout 246
- 12.4.2 边界式布局管理器BorderLayout 248
- 12.4.3 网格式布局管理器GridLayout 249
- 12.4.4 卡片式布局管理器CardLayout 251
- 12.4.5 网格包布局管理器GridBagLayout 253
- 12.4.6 盒式布局管理器BoxLayout 256
- 12.4.7 重叠布局管理器OverlayLayout 和弹簧布局管理器SpringLayout 简介 258
- 本章小结 258
- 习题12 259
- 第13章 事件处理 260
- 13.1 Java语言的事件处理机制 ——委托事件模型 260
- 13.2 Java语言的事件类 266
- 13.3 适配器类 271
- 13.4 命令按钮及相应的事件处理 271
- 13.5 复选框、单选按钮及相应的事件 处理 273
- 13.6 文本组件及相应的事件处理 275
- 13.7 窗口组件及窗口事件处理 277
- 13.8 对话框设计及相应的事件处理 279
- 13.9 按键事件类 283
- 13.10 鼠标事件类 286
- 13.11 列表框及相应的事件处理 289
- 13.12 组合框及相应的事件处理 291
- 13.13 菜单设计 294
- 13.13.1 窗口菜单 295
- 13.13.2 弹出式菜单 301
- 13.14 工具栏设计 304
- 13.15 滑动条设计及相应的事件处理 306
- 13.16 文件选择对话框 308
- 13.17 颜色选择窗格 313
- 13.18 定时器 315
- 本章小结 317
- 习题13 318
- 第14章 绘图程序设计 319
- 14.1 图形坐标系与绘图类 319
- 14.2 绘图程序设计 322
- 本章小结 328
- 习题14 329
- 第15章 小程序设计 330
- 15.1 小程序的基本工作原理 330
- 15.2 JApplet类 331
- 15.3 Java小程序编程实例 333
- 15.4 将应用程序转换成小程序及 小程序的安全性 337
- 15.5 图像文件处理 338
- 15.6 播放音乐 339
- 15.7 动画程序设计 341
- 本章小结 347
- 习题15 347
- 第16章 Java数据库程序设计 349
- 16.1 关系数据库系统 349
- 16.1.1 数据库与数据库表 350
- 16.1.2 完整性约束 351
- 16.2 SQL 352
- 16.2.1 创建数据库 352
- 16.2.2 表操作 353
- 16.2.3 表数据操作 354
- 16.2.4 数据查询 355
- 16.3 JDBC 358
- 16.3.1 JDBC概述 358
- 16.3.2 JDBC类型 359
- 16.3.3 使用JDBC开发数据库应用程序 360
- 16.3.4 数据库的进一步操作 368
- 16.3.5 获取元数据 376
- 16.3.6 事务操作 380
- 16.3.7 通过Java JApplet访问数据库 383
- 本章小结 385
- 习题16 386
- 第17章 Java网络编程 387
- 17.1 网络基础 387
- 17.1.1 TCP/IP协议 387
- 17.1.2 通信端口 388
- 17.1.3 URL概念 388
- 17.1.4 Java语言的网络编程 389
- 17.2 URL编程 390
- 17.2.1 创建URL对象 390
- 17.2.2 使用URL类访问网络资源 391
- 17.3 用Java语言实现底层网络通信 392
- 17.3.1 InetAddress程序设计 392
- 17.3.2 基于连接的Socket通信程序设计 394
- 17.3.3 无连接的数据报通信程序设计 402
- 本章小结 406
- 习题17 407
- 参考文献 408