
Java程式设计教程(张克军编人民邮电出版社教材)
《Java程式设计教程》是2009年人民邮电出版社出版的图书,作者是张克军、陆迟。本书按照实际开发流程并结合实际代码对Java程式设计方法进行了深入讲解。
基本介绍
- 书名:Java程式设计教程
- 作者:张克军、陆迟
- ISBN:9787115205520
- 定价:34
- 出版社:人民邮电出版社
- 出版时间:2009-10-1
- 开本:16
内容简介
全书共11章,循序渐进地介绍了Java语言概述、Java程式设计基础、Java中的对象与类、集合、数组与字元串、Java Applet、图形用户界面编程、Java输入输出与资料库操作、网路程式设计和异常处理。
本书可作为普通高等院校Java程式设计类课程的教材使用,也可供Java初学人员,或者是已经具备一定基础的Java程式设计师阅读参考。
编辑推荐
《Java程式设计教程》:作为1995年由Sun公司组织开发的一种程式语言,Java是一种纯面向对象的语言,具有高度的可移植和安全性,具备简单性、跨平台、面向对象、多执行绪等诸多特点,已经成为当今业界面向对象程式设计的主流、採用Java作为程式设计课程的编程平台,可以有效克服C/C++所带来的教学难点。因此,越来越多的高校开始将Java作为程式设计课程的主线。
详解Java基础,从零起步学习Java程式设计
丰富实例套用,通过案例讲解程式开发方法
突出实践操作,各章上机指导培养动手能力
目录
第1章 Java语言概述 1
1.1 Java的发展历程 1
1.2 Java语言的基本特点 1
1.3 Java虚拟机 3
1.4 Java开发工具箱 3
1.4.1 下载与安装Java开发工具包(JDK) 4
1.4.2 JDK目录 6
1.4.3 设定环境变数 7
1.5 学会使用API 8
1.6 常见IDE介绍 10
1.6.1 JCreator软体 10
1.6.2 JBuilder软体 11
1.6.3 Eclipse软体 11
1.7 第一个Java程式 12
1.7.1 开发原始码 12
1.7.2 编译运行 13
小结 13
习题 14
上机指导 14
实验:运算并显示某一算式的运算结果 14
第2章 Java程式设计基础 15
2.1 Java中的关键字与标识符的命名规则 15
2.2 Java的基本数据类型 16
2.2.1 boolean类型 18
2.2.2 byte、short、int和long类型 18
2.2.3 float和double类型 20
2.3 封装类型 21
2.3.1 封装类型概述 21
2.3.2 创建封装类对象 21
2.4 Java操作符 23
2.4.1 算术运算符 23
2.4.2 自增自减运算 27
2.4.3 关係运算 29
2.4.4 逻辑运算 30
2.4.5 三元运算符 32
2.4.6 位运算 34
2.4.7 移位运算 35
2.4.8 赋值运算 35
2.4.9 括弧及运算符间的优先权关係 37
2.5 Java中变数的赋值与类型转换 37
2.5.1 基本类型转换 38
2.5.2 强制类型转换 38
2.6 Java中的控制语句 39
2.6.1 分支语句 39
2.6.2 循环语句 42
2.6.3 流程跳转语句 45
2.7 断言 46
2.7.1 断言的概念 47
2.7.2 如何启用/关闭断言 48
2.7.3 防止滥用断言 50
小结 51
习题 51
上机指导 51
实验一:不同类型数据间的运算 51
实验二:多重for循环绘製图形 52
实验三:使用switch语句实现条件分支 53
第3章 Java中的对象与类 54
3.1 面向对象概述 54
3.2 类的定义与对象的创建 55
3.3 包的使用 55
3.3.1 声明创建包 56
3.3.2 引入包内的资源 58
3.4 类的成员变数和方法 60
3.4.1 访问修饰符 61
3.4.2 成员变数 61
3.4.3 成员变数的初始值 62
3.4.4 方法 66
3.4.5 构造方法 67
3.4.6 参数的传递 68
3.5 抽象类与接口 69
3.5.1 抽象类与抽象方法 69
3.5.2 接口 72
3.6 final关键字 74
3.7 类的继承 75
3.7.1 如何定义子类 76
3.7.2 方法的覆盖 78
3.7.3 this与super关键字 80
3.7.4 继承的层次结构 81
3.8 static关键字 82
小结 86
习题 87
上机指导 88
实验一:对象引用型成员变数的使用 88
实验二:含有返回值的方法的使用 89
实验三:使用对象模拟“商店客户折扣卡”功能 90
第4章 集合 93
4.1 列表(List) 94
4.1.1 列表接口 95
4.1.2 列表的数组实现 96
4.1.3 向量 98
4.1.4 列表的连结实现 99
4.1.5 将数组转换为列表 100
4.2 集合(Set) 101
4.2.1 Set接口及含义 101
4.2.2 HashSet类的使用 102
4.2.3 LinkedHashSet类的使用 103
4.2.4 SortedSet接口与TreeSet类 104
4.2.5 自定义满足Sorted集合的类 106
4.2.6 定製SortedSet的排序规则 109
4.2.7 集合的遍历 110
4.3 映射(Map) 113
4.3.1 Map接口及含义 114
4.3.2 HashMap类的使用 114
4.3.3 Hashtable类的使用 116
4.3.4 LinkedHashMap类的使用 116
4.3.5 SortedMap接口与TreeMap类 117
4.3.6 映射的遍历 119
小结 121
习题 121
上机指导 122
实验:使用叠代器完成遍历 122
第5章 数组与字元串 124
5.1 数组的声明与创建 124
5.1.1 声明数组引用 124
5.1.2 创建数组对象 125
5.2 Java中数组的实现机制 126
5.3 数组的初始化 128
5.3.1 默认初始化 128
5.3.2 利用循环初始化 129
5.3.3 枚举初始化 130
5.4 数组的相互赋值 131
5.4.1 基本类型数组赋值规则 131
5.4.2 引用类型数组赋值规则 132
5.5 数组的基本操作 133
5.5.1 数组複製 133
5.5.2 数组排序 135
5.5.3 搜寻指定元素 135
5.5.4 比较数组中的元素 136
5.6 关于args[] 136
5.7 String类 137
5.7.1 对象的创建 138
5.7.2 巧用构造器 138
5.7.3 String类的重要方法 139
5.7.4 String的记忆体机制 141
5.8 StringBuffer类 145
5.8.1 弥补String不足的StringBuffer类 145
5.8.2 编写方法链以及StringBuffer类的重要方法 146
5.9 正则表达式 147
5.9.1 正则表达式的基本语法 148
5.9.2 Pattern类简介 150
5.9.3 Matcher类简介 151
5.9.4 Pattern与Matcher类的综合套用 151
5.9.5 利用正则表达式进行查找替换 153
小结 154
习题 154
上机指导 155
实验一:编写数组複製的程式 155
实验二:改变String对象引用的指向 156
第6章 Java Applet 157
6.1 Applet概述 157
6.1.1 Applet的基本工作原理 157
6.1.2 如何在网页中嵌入Applet 157
6.1.3 Applet的安全性 159
6.2 Applet的基本方法 159
6.3 向Applet传递参数 161
6.4 Applet综合示例 162
6.4.1 示例——使用Applet显示当前日期及时间 163
6.4.2 示例——使用Applet实现计算器功能 164
6.4.3 示例——使用Applet来处理声音档案 167
6.4.4 示例——使用Applet显示图像 168
小结 170
习题 170
上机指导 171
实验一:Applet简单使用 171
实验二:在Applet中使用BorderLayout 172
实验三:Java Applet中使用字型列表显示各种字型 173
第7章 图形用户界面编程 175
7.1 Swing和AWT的对比 175
7.1.1 Swing与AWT之间的关係 175
7.1.2 Swing与AWT的控制项的混用建议 176
7.2 一个简单的图形用户界面程式 177
7.3 容器类 179
7.3.1 顶级容器概述 179
7.3.2 JFrame主视窗 179
7.3.3 JDialog对话框视窗 180
7.3.4 JPanel面板的使用 180
7.4 布局管理器 180
7.4.1 布局管理器的概述 180
7.4.2 框线布局BorderLayout 181
7.4.3 流动布局FlowLayout 182
7.4.4 卡片布局CardLayout 182
7.4.5 格线布局GridLayout 182
7.4.6 使用绝对定位 183
7.5 Java事件处理机制 184
7.5.1 事件处理模型 185
7.5.2 为组件注册事件 185
7.6 常见的事件处理 186
7.6.1 滑鼠事件 186
7.6.2 滑鼠移动事件 188
7.6.3 选项事件 189
7.6.4 视窗事件 189
7.6.5 键盘事件 189
7.7 Swing组件 191
7.7.1 按钮 192
7.7.2 文本组件 192
7.7.3 单选按钮JRadioButton 195
7.7.4 複选框JCheckBox 195
7.7.5 下拉列表JComboBox 196
7.7.6 滑块JSlider 197
7.7.7 进度条JProgressBar及Timer组件 197
7.7.8 选单JMenu概述 199
7.7.9 工具列JToolBar 199
7.8 一个综合的Swing组件示例 200
小结 202
习题 203
上机指导 203
实验一:组合使用文本区与滚动视窗 203
实验二:使用滑块与进度条 205
实验三:档案、颜色对话框综合案例 207
第8章 Java输入输出与资料库操作 209
8.1 流概述 209
8.1.1 流的定义 209
8.1.2 输入输出类结构 209
8.2 一个读取档案的简单实例 211
8.3 档案类(File)的使用 212
8.3.1 获取指定档案的描述信息 213
8.3.2 创建新档案 214
8.3.3 档案改名及档案删除 215
8.3.4 获取指定档案目录下的所有档案 216
8.4 读取档案 217
8.4.1 示例——读取档案并显示 217
8.4.2 读取档案的分类及所涉及的类 219
8.5 写入档案 220
8.5.1 示例——将输入的文本保存到档案 220
8.5.2 写入档案的分类及所涉及的类 222
8.5.3 写入档案Writer类的基本方法 222
8.6 随机访问档案 222
8.6.1 RandomAccessFile类的构造及内部方法 223
8.6.2 示例——使用随机访问档案流来对档案进行读写 224
8.7 创建压缩档案 225
8.7.1 ZipFile档案压缩类概述 225
8.7.2 实现数据档案Zip方式的压缩方法 226
8.7.3 将.class档案打包成jar档案 229
8.8 资料库操作 229
8.8.1 使用JDBC连线资料库 229
8.8.2 执行SQL语句 235
小结 238
习题 238
上机指导 239
实验一:管理目录档案 239
实验二:学习使用位元组流 240
实验三:利用JDBC连线资料库 241
第9章 多执行绪——Java中的并发协作 244
9.1 执行绪的基本知识 244
9.1.1 多执行绪编程的意义 244
9.1.2 定义自己的执行绪 245
9.1.3 创建执行绪对象 246
9.1.4 启动执行绪 247
9.1.5 同时使用多个执行绪 249
9.2 执行绪的状态 251
9.3 执行绪的调度 252
9.3.1 睡眠 252
9.3.2 执行绪的优先权 253
9.3.3 执行绪的让步 253
9.3.4 守护执行绪 254
9.4 执行绪的同步 254
9.4.1 同步方法简介 255
9.4.2 简单使用同步方法 255
9.4.3 执行绪同步调度的方法 258
9.4.4 同步的语句块 258
9.4.5 执行绪的死锁 259
9.5 进程同步经典示例 261
9.5.1 “生产者-消费者”案例的框架 262
9.5.2 “生产者-消费者”案例的实际运行 265
9.5.3 notify方法的使用 266
9.6 volatile关键字的含义与使用 268
小结 269
习题 269
上机指导 270
实验一:Sleep方法的学习使用 270
实验二:利用执行绪同步实现生产者与消费者模式 272
实验三:执行绪的优先权 275
第10章 网路程式设计 277
10.1 网路通信概述 277
10.1.1 什幺是网路通信 277
10.1.2 网路协定基础 277
10.1.3 Java中所涉及到的网路套用类 278
10.2 一个简单的网路编程实例 278
10.3 使用URL类 280
10.3.1 URL类中常用的方法 280
10.3.2 使用URLConnetion类 281
10.4 使用InetAddress类获取IP位址信息 283
10.5 使用套接字Socket类 285
10.5.1 Socket类与ServerSocket类 285
10.5.2 建立与伺服器的连线 286
10.6 使用套接字Datagram类 291
10.6.1 Datagram(数据报)套接字 291
10.6.2 使用Datagram实现数据传输 292
10.7 网路程式经典示例——聊天室程式 294
10.7.1 聊天室基本原理 294
10.7.2 客户端程式 294
10.7.3 伺服器端程式 298
小结 305
习题 305
上机指导 306
实验一:使用URL标识网路中计算机上的资源 306
实验二:列印主机对应IP位址的InetAddress对象的主机名及地址 307
实验三:使用Socket编写C/S架构程式 307
第11章 异常处理 310
11.1 异常处理的基本知识 310
11.1.1 try和catch捕获异常 310
11.1.2 异常的传播过程 313
11.1.3 finally语句块的使用 315
11.2 异常的层次结构 317
11.2.1 捕获异常 318
11.2.2 未捕获异常 320
11.3 再次抛出异常 321
11.3.1 什幺是异常的再抛出 321
11.3.2 显性再抛出 322
11.3.3 隐性再抛出 324
11.4 定义自己的异常 326
11.4.1 创建自己的异常类 326
11.4.2 使用自定义的异常类 327
11.5 异常的匹配 329
11.5.1 同时捕获多种异常 330
11.5.2 多个catch语句的先后顺序 331
小结 332
习题 332
上机指导 334
实验一:finally语句的使用 334
实验二:创建自己的异常类 335
实验三:匹配异常 335