下载 >  开发技术 >  Perl > Perl 教程 编程参考 函数全集

Perl 教程 编程参考 函数全集

Perl 教程,内容包括 Perl rpogram,Perl函数全集,Perl 语言入门,Perl 编程参考手册 几部分
2009-06-12 上传大小:7.41MB
分享
收藏 (1) 举报
Perl函数全集

Perl函数全集,perl的新华字典

立即下载
PERL编程24学时教程.pdf

目 录 译者序 前言 第一部分 Perl基础 第1学时 Perl入门 3 1.1 安装Perl 3 1.1.1 等一等,也许你已经安装了Perl 4 1.1.2 在Windows 95/98/NT上安装Perl 5 1.1.3 在UNIX上安装Perl 6 1.1.4 在Macintosh系统上安装Perl 7 1.2 文档资料 7 1.2.1 某些特殊的文档资料举例 8 1.2.2 如果无法找到文档该怎么办 9 1.3 编写你的第一个Perl程序 9 1.3.1 键入程序 9 1.3.2 运行程序 9 1.3.3 程序正确将会发生什么情况 10 1.3.4 Perl程序的具体运行过程 10 1.3.5 必须知道的一些情况 11 1.4 课时小结 12 1.5 课外作业 12 1.5.1 专家答疑 12 1.5.2 思考题 12 1.5.3 解答 13 1.5.4 实习 13 第2学时 Perl的基本构件:数字和 字符串 14 2.1 直接量 14 2.1.1 数字 14 2.1.2 字符串 15 2.2 标量变量 16 2.3 表达式和运算符 18 2.3.1 基本运算符 18 2.3.2 数字运算符 19 2.3.3 字符串运算符 19 2.4 其他运算符 20 2.4.1 单参数运算符 20 2.4.2 递增和递减 21 2.4.3 尖括号运算符 21 2.4.4 其他赋值运算符 22 2.4.5 关于字符串和数字的一些说明 22 2.5 练习:利息计算程序 23 2.6 课时小结 24 2.7 课外作业 24 2.7.1 专家答疑 24 2.7.2 思考题 24 2.7.3 解答 25 2.7.4 实习 25 第3学时 控制程序流 26 3.1 语句块 26 3.2 if语句 27 3.2.1 其他关系运算符 28 3.2.2 “真”对于Perl意味着什么 29 3.2.3 逻辑运算符 30 3.3 循环 32 3.3.1 用while进行循环 32 3.3.2 使用for循环 33 3.4 其他流控制工具 33 3.4.1 奇特的执行顺序 33 3.4.2 明细控制 34 3.4.3 标号 35 3.4.4 退出Perl 35 3.5 练习:查找质数 35 3.6 课时小结 37 3.7 课外作业 37 3.7.1 专家答疑 37 3.7.2 思考题 37 3.7.3 解答 38 3.7.4 实习 38 第4学时 基本构件的堆栈:列表与数组 39 4.1 将数据放入列表和数组 39 4.2 从数组中取出元素 41 4.2.1 寻找结尾 42 4.2.2 关于上下文的详细说明 43 4.2.3 回顾以前的几个功能 44 4.3 对数组进行操作 45 4.3.1 遍历数组 46 4.3.2 在数组与标量之间进行转换 46 4.3.3 给数组重新排序 48 4.4 练习:做一个小游戏 49 4.5 课时小结 51 4.6 课外作业 51 4.6.1 专家答疑 51 4.6.2 思考题 51 4.6.3 解答 52 4.6.4 实习 52 第5学时 进行文件操作 53 5.1 打开文件 53 5.1.1 路径名 54 5.1.2 出色的防错措施 55 5.1.3 以适当的方式运行die函数 56 5.2 读取文件 56 5.3 写入文件 58 5.4 自由文件、测试文件和二进制数据 60 5.4.1 自由文件句柄 60 5.4.2 二进制文件 60 5.4.3 文件测试运算符 61 5.5 课时小结 62 5.6 课外作业 62 5.6.1 专家答疑 62 5.6.2 思考题 63 5.6.3 解答 63 5.6.4 实习 63 第6学时 模式匹配 64 6.1 简单的模式 64 6.2 元字符 66 6.2.1 一个简单的元字符 66 6.2.2 非输出字符 66 6.2.3 通配符 66 6.2.4 字符类 68 6.2.5 分组和选择 69 6.2.6 位置通配符 69 6.3 替换 70 6.4 练习:清除输入数据 70 6.5 关于模式匹配的其他问题 71 6.5.1 对其他变量进行操作 71 6.5.2 修饰符与多次匹配 72 6.5.3 反向引用 73 6.5.4 一个新函数:grep 73 6.6 课时小结 74 6.7 课外作业 74 6.7.1 专家答疑 74 6.7.2 思考题 75 6.7.3 解答 75 6.7.4 实习 75 第7学时 哈希结构 77 7.1 将数据填入哈希结构 77 7.2 从哈希结构中取出数据 78 7.3 列表与哈希结构 80 7.4 关于哈希结构的补充说明 81 7.4.1 测试哈希结构中的关键字 81 7.4.2 从哈希结构中删除关键字 81 7.5 用哈希结构进行的有用操作 81 7.5.1 确定频率分布 82 7.5.2 在数组中寻找惟一的元素 82 7.5.3 寻找两个数组之间的交汇部分 和不同部分 83 7.5.4 对哈希结构进行排序 84 7.6 练习:用Perl创建一个简单的客户 数据库 84 7.7 课时小结 86 7.8 课外作业 86 7.8.1 专家答疑 86 7.8.2 思考题 87 7.8.3 解答 87 7.8.4 实习 88 第8学时 函数 89 8.1 创建和调用子例程 89 8.1.1 返回子例程的值 90 8.1.2 参数 91 8.1.3 传递数组和哈希结构 91 8.2 作用域 92 8.3 练习:统计数字 94 8.4 函数的脚注 96 8.4.1 声明local变量 96 8.4.2 使Perl变得更加严格 97 8.4.3 递归函数 98 8.5 课时小结 99 8.6 课外作业 99 8.6.1 专家答疑 99 8.6.2 思考题 99 8.6.3 解答 100 8.6.4 实习 100 第二部分 高级特性 第9学时 其他函数和运算符 103 9.1 搜索标量 103 9.1.1 用index进行搜索 103 9.1.2 用rindex向后搜索 104 9.1.3 用substr分割标量 104 9.2 转换而不是替换 105 9.3 功能更强的print函数 106 9.4 练习:格式化报表 107 9.5 堆栈形式的列表 109 9.6 课时小结 110 9.7 课外作业 111 9.7.1 专家答疑 111 9.7.2 思考题 111 9.7.3 解答 112 9.7.4 实习 112 第10学时 文件与目录 113 10.1 获得目录列表 113 10.2 练习:UNIX的grep 116 10.3 目录 117 10.3.1 浏览目录 117 10.3.2 创建和删除目录 118 10.3.3 删除文件 119 10.3.4 给文件改名 119 10.4 UNIX系统 120 10.5 你应该了解的关于文件的所有信息 121 10.6 练习:对整个文件改名 122 10.7 课时小结 123 10.8 课外作业 124 10.8.1 专家答疑 124 10.8.2 思考题 124 10.8.3 解答 124 10.8.4 实习 125 第11学时 系统之间的互操作性 126 11.1 system()函数 126 11.2 捕获输出 128 11.3 管道 129 11.4 可移植性入门 131 11.5 课时小结 134 11.6 课外作业 134 11.6.1 专家答疑 134 11.6.2 思考题 135 11.6.3 解答 135 11.6.4 实习 136 第12学时 使用Perl的命令行工具 137 12.1 什么是调试程序 137 12.1.1 启动调试程序 137 12.1.2 调试程序的基本命令 138 12.1.3 断点 139 12.1.4 其他调试程序命令 140 12.2 练习:查找错误 141 12.3 其他命令行特性 142 12.3.1 单命令行程序 142 12.3.2 其他开关 143 12.3.3 空的尖括号与更多的单命令 行程序 144 12.4 课时小结 145 12.5 课外作业 145 12.5.1 专家答疑 145 12.5.2 思考题 146 12.5.3 解答 146 第13学时 引用与结构 147 13.1 引用的基本概念 147 13.1.1 对数组的引用 149 13.1.2 对哈希结构的引用 149 13.1.3 作为参数的引用 150 13.1.4 创建各种结构 151 13.2 结构的配置方法 152 13.2.1 一个例子:列表中的列表 152 13.2.2 其他结构 153 13.2.3 使用引用来调试程序 154 13.3 练习:另一个游戏——迷宫 155 13.4 课时小结 157 13.5 课外作业 157 13.5.1 专家答疑 157 13.5.2 思考题 158 13.5.3 解答 158 13.5.4 实习 158 第14学时 使用模块 159 14.1 模块的概述 159 14.1.1 读取关于模块的文档 160 14.1.2 什么地方可能出错 161 14.2 已安装模块简介 162 14.2.1 文件和目录简介 162 14.2.2 拷贝文件 164 14.2.3 用于通信的Perl模块 164 14.2.4 使用English模块 165 14.2.5 diagnostics模块 165 14.3 标准模块的完整列表 166 14.4 课时小结 167 14.5 课外作业 167 14.5.1 专家答疑 167 14.5.2 思考题 168 14.5.3 解答 168 14.5.4 实习 168 第15学时 了解程序的运行性能 169 15.1 DBM文件 169 15.1.1 需要了解的重点 170 15.1.2 遍历与DBM文件相连接的哈 希结构 170 15.2 练习:一种自由格式备忘记事板 171 15.3 将文本文件用作数据库 173 15.4 随机访问文件 175 15.4.1 打开文件进行读写操作 175 15.4.2 在读写文件中移动 176 15.5 锁定文件 176 15.5.1 锁定UNIX和NT下的文件 178 15.5.2 在加锁情况下进行读写操作 179 15.5.3 Windows 95和Windows 98下的 加锁问题 180 15.5.4 在其他地方使用文件锁的问题 181 15.6 课时小结 181 15.7 课外作业 181 15.7.1 专家答疑 181 15.7.2 思考题 182 15.7.3 解答 182 15.7.4 实习 182 第16学时 Perl语言开发界 183 16.1 Perl究竟是一种什么语言 183 16.1.1 Perl的简单发展历史 183 16.1.2 开放源 184 16.1.3 Perl的开发 185 16.2 Perl综合存档文件网 185 16.2.1 什么是CPAN 186 16.2.2 为什么人们愿意提供自己的开 发成果 186 16.3 下一步你要做的工作 187 16.3.1 要做的第一步工作 187 16.3.2 最有用的工具 187 16.3.3 查找程序中的错误 188 16.3.4 首先要靠自己来解决问题 188 16.3.5 从别人的程序错误中吸取教训 189 16.3.6 请求他人的帮助 190 16.4 其他资源 191 16.5 课时小结 192 16.6 课外作业 192 16.6.1 专家答疑 192 16.6.2 思考题 192 16.6.3 解答 192 第三部分 将Perl用于CGI 第17学时 CGI概述 195 17.1 浏览Web 195 17.1.1 检索一个静态Web页 196 17.1.2 动态Web页—使用CGI 197 17.2 不要跳过这一节内容 198 17.3 编写你的第一个CGI程序 199 17.3.1 在服务器上安装CGI程序 200 17.3.2 运行你的CGI程序 201 17.4 CGI程序无法运行时怎么办 201 17.4.1 这是你的CGI程序吗 201 17.4.2 服务器存在的问题 202 17.4.3 排除服务器内部错误或500错误 203 17.5 课时小结 204 17.6 课外作业 204 17.6.1 专家答疑 204 17.6.2 思考题 205 17.6.3 解答 205 17.6.4 实习 206 第18学时 基本窗体 207 18.1 窗体是如何运行的 207 18.1.1 HTML窗体元素概述 207 18.1.2 单击submit时出现的情况 208 18.2 将信息传递给你的CGI程序 209 18.3 Web安全性 211 18.3.1 建立传输明码文本的连接 211 18.3.2 注意不安全数据 212 18.3.3 从事无法执行的操作 213 18.3.4 拒绝服务 213 18.4 宾客留言簿 214 18.5 课时小结 215 18.6 课外作业 215 18.6.1 专家答疑 215 18.6.2 思考题 216 18.6.3 解答 216 18.6.4 实习 216 第19学时 复杂窗体 217 19.1 复杂的多页窗体 217 19.2 隐藏域 217 19.3 多页调查窗体 219 19.4 课时小结 224 19.5 课外作业 224 19.5.1 专家答疑 224 19.5.2 思考题 225 19.5.3 解答 225 19.5.4 实习 225 第20学时 对HTTP和CGI进行操作 226 20.1 HTTP通信概述 226 20.1.1 举例:人工检索Web页 227 20.1.2 举例:返回非文本信息 228 20.2 如何调用CGI程序的详细说明 230 20.2.1 将参数传递给CGI程序 230 20.2.2 特殊参数 231 20.3 服务器端的包含程序 232 20.4 部分环境函数简介 234 20.5 重定向 235 20.6 课时小结 237 20.7 课外作业 237 20.7.1 专家答疑 237 20.7.2 思考题 237 20.7.3 解答 238 20.7.4 实习 238 第21学时 cookie 239 21.1 什么是cookie 239 21.1.1 如何创建cookie 240 21.1.2 举例:使用cookie 241 21.1.3 另一个例子:cookie查看器 242 21.2 高级cookie特性 243 21.2.1 设置cookie终止运行的时间 243 21.2.2 cookie的局限性 244 21.2.3 将cookie发送到其他地方 244 21.2.4 限制cookie返回到的位置 246 21.2.5 带有安全性的cookie 247 21.3 cookie存在的问题 247 21.3.1 cookie的生存期很短 247 21.3.2 并非所有浏览器都支持cookie 247 21.3.3 有些人不喜欢cookie 247 21.4 课时小结 248 21.5 课外作业 248 21.5.1 专家答疑 248 21.5.2 思考题 249 21.5.3 解答 250 21.5.4 实习 250 第22学时 使用CGI程序发送电子邮件 251 22.1 Internet邮件入门 251 22.1.1 发送电子邮件 252 22.1.2 发送邮件时首先应该注意的问题 252 22.2 邮件发送函数 253 22.2.1 用于UNIX系统的邮件函数 254 22.2.2 用于非UNIX系统的邮件函数 255 22.3 从Web页发送邮件 257 22.4 课时小结 259 22.5 课外作业 259 22.5.1 专家答疑 259 22.5.2 思考题 260 22.5.3 解答 260 22.5.4 实习 260 第23学时 服务器推送和访问次数 计数器 261 23.1 什么是服务器推送 261 23.1.1 激活服务器推送特性 262 23.1.2 一个小例子:更新Web页上 的时钟 262 23.1.3 另一个例子:动画 263 23.1.4 客户机拖拉技术 264 23.2 访问次数计数器 264 23.2.1 编写一个访问次数计数器程序 266 23.2.2 图形访问次数计数器 267 23.3 课时小结 268 23.4 课外作业 269 23.4 1 专家答疑 269 23.4.2 思考题 269 23.4.3 解答 269 23.4.4 实习 270 第24学时 建立交互式Web站点 271 24.1 借用另一个站点的内容 271 24.1.1 注意内容的版权问题 271 24.1.2 举例:检索标题 272 24.2 调查窗体 275 24.2.1 调查窗体程序的第一部分: 提出问题 276 24.2.2 调查窗体程序的第二部分: 计算调查结果 277 24.3 课时小结 280 24.4 课外作业 280 24.4.1 专家答疑 280 24.4.2 思考题 281 24.4.3 解答 281 24.4.4 实习 281 第四部分 附录 附录 安装模块 285

立即下载
perl编程速成教程

perl编程速成教程全集,分上中下三部,有过编程经验的人学起来简单易懂

立即下载
Perl编程起步 perl 教程

Perl编程起步 perl 教程 Perl编程起步 perl 教程

立即下载
PERL编程24学时教程

PERL编程24学时教程PERL编程24学时教程PERL编程24学时教程PERL编程24学时教程PERL编程24学时教程

立即下载
Perl编程24学时教程

Perl编程24学时教程, Perl编程24学时教程, Perl编程24学时教程

立即下载
perl编程24学时教程

perl编程24学时教程,perl编程24学时教程,perl编程24学时教程

立即下载
Java 8编程官方参考教程(第9版).pdf

Java 8编程官方参考教程(第9版).pdf,压缩版,解压后249M

立即下载
Java 8编程参考官方教程(第9版).[美]Herbert Schildt(带详细书签).pdf

本书针对Java SE 8做了全面更新,介绍了如何开发、编译、调试和运行Java程序。畅销书作者Herbert Schildt撰写过众多经典的计算机编程图书。在本书中,他详尽地讲解了Java语言,包括Java的语法、关键字和基本编程原则,以及Java API库的主要内容。另外,本书还介绍了Java Bean、servlet、applet和Swing,并通过真实案例展示了Java语言的应用。本书对Java SE 8的新特性也进行了深入讲解,包括lambda表达式、流库和默认接口方法,书末介绍的JavaFX知识为深入学习打下了坚实基础。 主要内容 ● 数据类型、变量、数组和运算符 ● 控制语句 ● 类、对象和方法 ● 方法重载和重写 ● 继承 ● 接口和包 ● 异常处理 ● 多线程编程 ● 枚举、自动装箱和注解 ● I/O类 ● 泛型 ● lambda表达式 ● 字符串处理 ● 集合框架 ● 联网 ● 事件处理 ● AWT和Swing ● 并发API ● 流API ● 正则表达式 ● JavaFX ● Java Bean ● applet和servlet 第Ⅰ部分 Java语言 1 第1章 Java的历史和演变 3 1.1 Java的家世 4 1.1.1 现代编程语言的诞生:C语言 4 1.1.2 C++:下一个阶段 5 1.1.3 Java出现的时机已经成熟 6 1.2 Java的诞生 6 1.3 Java改变Internet的方式 8 1.3.1 Java applet 8 1.3.2 安全性 8 1.3.3 可移植性 8 1.4 Java的魔力:字节码 9 1.5 servlet:服务器端的Java 10 1.6 Java的关键特性 10 1.6.1 简单性 10 1.6.2 面向对象 11 1.6.3 健壮性 11 1.6.4 多线程 11 1.6.5 体系结构中立 11 1.6.6 解释执行和高性能 12 1.6.7 分布式 12 1.6.8 动态性 12 1.7 Java的演变历程 12 1.8 Java SE 8 14 1.9 文化革新 15 第2章 Java综述 17 2.1 面向对象编程 17 2.1.1 两种范式 18 2.1.2 抽象 18 2.1.3 OOP三原则 19 2.2 第一个简单程序 23 2.2.1 输入程序 23 2.2.2 编译程序 23 2.2.3 深入分析第一个示例程序 24 2.3 第二个简短程序 26 2.4 两种控制语句 27 2.4.1 if语句 27 2.4.2 for循环 29 2.5 使用代码块 30 2.6 词汇问题 31 2.6.1 空白符 32 2.6.2 标识符 32 2.6.3 字面值 32 2.6.4 注释 32 2.6.5 分隔符 32 2.6.6 Java关键字 33 2.7 Java类库 34 第3章 数据类型、变量和数组 35 3.1 Java是强类型化的语言 35 3.2 基本类型 36 3.3 整型 36 3.3.1 byte 37 3.3.2 short 37 3.3.3 int 37 3.3.4 long 37 3.4 浮点型 38 3.4.1 float 38 3.4.2 double 39 3.5 字符型 39 3.6 布尔型 41 3.7 深入分析字面值 42 3.7.1 整型字面值 42 3.7.2 浮点型字面值 43 3.7.3 布尔型字面值 43 3.7.4 字符型字面值 43 3.7.5 字符串字面值 44 3.8 变量 45 3.8.1 变量的声明 45 3.8.2 动态初始化 45 3.8.3 变量的作用域和生存期 46 3.9 类型转换和强制类型转换 48 3.9.1 Java的自动类型转换 48 3.9.2 强制转换不兼容的类型 48 3.10 表达式中的自动类型提升 50 3.11 数组 51 3.11.1 一维数组 51 3.11.2 多维数组 54 3.11.3 另一种数组声明语法 58 3.12 关于字符串的一些说明 58 3.13 向C/C++程序员提供指针方面的说明 59 第4章 运算符 61 4.1 算术运算符 61 4.1.1 基本算术运算符 62 4.1.2 求模运算符 63 4.1.3 算术与赋值复合运算符 64 4.1.4 自增与自减运算符 65 4.2 位运算符 66 4.2.1 位逻辑运算符 67 4.2.2 左移 70 4.2.3 右移 71 4.2.4 无符号右移 72 4.2.5 位运算符与赋值的组合 74 4.3 关系运算符 74 4.4 布尔逻辑运算符 75 4.5 赋值运算符 77 4.6 “?”运算符 78 4.7 运算符的优先级 79 4.8 使用圆括号 80 第5章 控制语句 81 5.1 Java的选择语句 81 5.1.1 if语句 82 5.1.2 switch语句 84 5.2 迭代语句 89 5.2.1 while语句 89 5.2.2 do-while语句 91 5.2.3 for语句 93 5.2.4 for循环的for-each版本 97 5.2.5 嵌套的循环 102 5.3 跳转语句 103 5.3.1 使用break语句 103 5.3.2 使用continue语句 107 5.3.3 return语句 108 第6章 类 111 6.1 类的基础知识 112 6.1.1 类的一般形式 112 6.1.2 一个简单的类 113 6.2 声明对象 115 6.3 为对象引用变量赋值 117 6.4 方法 118 6.4.1 为Box类添加方法 118 6.4.2 返回值 120 6.4.3 添加带参数的方法 121 6.5 构造函数 123 6.6 this关键字 126 6.7 垃圾回收 127 6.8 finalize()方法 128 6.9 堆栈类 128 第7章 方法和类的深入分析 131 7.1 重载方法 131 7.2 将对象用作参数 136 7.3 参数传递的深入分析 139 7.4 返回对象 141 7.5 递归 142 7.6 访问控制 144 7.7 理解static 147 7.8 final介绍 149 7.9 重新审视数组 149 7.10 嵌套类和内部类 151 7.11 String类介绍 154 7.12 使用命令行参数 156 7.13 varargs:可变长度参数 157 7.13.1 重载varargs方法 160 7.13.2 varargs方法与模糊性 161 第8章 继承 165 8.1 继承的基础知识 165 8.1.1 成员访问与继承 167 8.1.2 一个更实际的例子 168 8.1.3 超类变量可以引用子类对象 170 8.2 使用super关键字 171 8.2.1 使用super调用超类的构造函数 171 8.2.2 super的另一种用法 175 8.3 创建多级继承层次 176 8.4 构造函数的调用时机 179 8.5 方法重写 180 8.6 动态方法调度 183 8.6.1 重写方法的目的 184 8.6.2 应用方法重写 185 8.7 使用抽象类 186 8.8 在继承中使用final关键字 189 8.8.1 使用final关键字阻止重写 189 8.8.2 使用final关键字阻止继承 190 8.9 Object类 190 第9章 包和接口 193 9.1 包 194 9.1.1 定义包 194 9.1.2 包查找与CLASSPATH 195 9.1.3 一个简短的包示例 195 9.2 访问保护 196 9.3 导入包 200 9.4 接口 202 9.4.1 定义接口 202 9.4.2 实现接口 203 9.4.3 嵌套接口 206 9.4.4 应用接口 207 9.4.5 接口中的变量 210 9.4.6 接口可以扩展 212 9.5 默认接口方法 213 9.5.1 默认方法的基础知识 214 9.5.2 一个更加实用的例子 215 9.5.3 多级继承的问题 216 9.6 在接口中使用静态方法 217 9.7 关于包和接口的最后说明 218 第10章 异常处理 219 10.1 异常处理的基础知识 219 10.2 异常类型 220 10.3 未捕获的异常 221 10.4 使用try和catch 222 10.5 多条catch子句 224 10.6 嵌套的try语句 225 10.7 throw 228 10.8 throws 229 10.9 finally 230 10.10 Java的内置异常 232 10.11 创建自己的异常子类 233 10.12 链式异常 235 10.13 3个近期添加的异常特性 237 10.14 使用异常 238 第11章 多线程编程 239 11.1 Java线程模型 240 11.1.1 线程优先级 241 11.1.2 同步 241 11.1.3 消息传递 242 11.1.4 Thread类和Runnable接口 242 11.2 主线程 243 11.3 创建线程 244 11.3.1 实现Runnable接口 245 11.3.2 扩展Thread类 247 11.3.3 选择一种创建方式 248 11.4 创建多个线程 248 11.5 使用isAlive()和join()方法 249 11.6 线程优先级 252 11.7 同步 253 11.7.1 使用同步方法 253 11.7.2 synchronized语句 255 11.8 线程间通信 257 11.9 挂起、恢复与停止线程 263 11.10 获取线程的状态 266 11.11 使用多线程 267 第12章 枚举、自动装箱与注解(元数据) 269 12.1 枚举 269 12.1.1 枚举的基础知识 270 12.1.2 values()和valueOf()方法 272 12.1.3 Java枚举是类类型 273 12.1.4 枚举继承自Enum类 275 12.1.5 另一个枚举示例 277 12.2 类型封装器 279 12.2.1 Character封装器 279 12.2.2 Boolean封装器 279 12.2.3 数值类型封装器 280 12.3 自动装箱 281 12.3.1 自动装箱与方法 281 12.3.2 表达式中发生的自动装箱/拆箱 282 12.3.3 布尔型和字符型数值的自动装箱/拆箱 284 12.3.4 自动装箱/拆箱有助于防止错误 285 12.3.5 一些警告 285 12.4 注解(元数据) 286 12.4.1 注解的基础知识 286 12.4.2 指定保留策略 287 12.4.3 在运行时使用反射获取注解 288 12.4.4 AnnotatedElement接口 293 12.4.5 使用默认值 293 12.4.6 标记注解 295 12.4.7 单成员注解 296 12.4.8 内置注解 297 12.5 类型注解 299 12.6 重复注解 303 第13章 I/O、applet以及其他主题 307 13.1 I/O的基础知识 308 13.1.1 流 308 13.1.2 字节流和字符流 308 13.1.3 预定义流 310 13.2 读取控制台输入 311 13.2.1 读取字符 311 13.2.2 读取字符串 312 13.3 向控制台写输出 314 13.4 PrintWriter类 314 13.5 读/写文件 315 13.6 自动关闭文件 321 13.7 applet的基础知识 325 13.8 transient和volatile修饰符 327 13.9 使用instanceof运算符 328 13.10 strictfp 330 13.11 本地方法 331 13.12 使用assert 334 13.13 静态导入 337 13.14 通过this()调用重载的构造函数 339 13.15 紧凑API配置文件 342 第14章 泛型 343 14.1 什么是泛型 344 14.2 一个简单的泛型示例 344 14.2.1 泛型只使用引用类型 348 14.2.2 基于不同类型参数的泛型类型是不同的 348 14.2.3 泛型提升类型安全性的原理 348 14.3 带两个类型参数的泛型类 350 14.4 泛型类的一般形式 352 14.5 有界类型 352 14.6 使用通配符参数 355 14.7 创建泛型方法 363 14.8 泛型接口 366 14.9 原始类型与遗留代码 368 14.10 泛型类层次 370 14.10.1 使用泛型超类 370 14.10.2 泛型子类 372 14.10.3 泛型层次中的运行时类型比较 374 14.10.4 强制转换 376 14.10.5 重写泛型类的方法 376 14.11 泛型的类型推断 378 14.12 擦除 379 14.13 模糊性错误 381 14.14 使用泛型的一些限制 382 14.14.1 不能实例化类型参数 382 14.14.2 对静态成员的一些限制 383 14.14.3 对泛型数组的一些限制 383 14.14.4 对泛型异常的限制 384 第15章 lambda表达式 385 15.1 lambda表达式简介 386 15.1.1 lambda表达式的基础知识 386 15.1.2 函数式接口 387 15.1.3 几个lambda表达式示例 388 15.2 块lambda表达式 391 15.3 泛型函数式接口 393 15.4 作为参数传递lambda表达式 395 15.5 lambda表达式与异常 398 15.6 lambda表达式和变量捕获 399 15.7 方法引用 400 15.7.1 静态方法的方法引用 400 15.7.2 实例方法的方法引用 401 15.7.3 泛型中的方法引用 405 15.8 构造函数引用 408 15.9 预定义的函数式接口 412 第Ⅱ部分 Java库 415 第16章 字符串处理 417 16.1 String类的构造函数 418 16.2 字符串的长度 420 16.3 特殊的字符串操作 420 16.3.1 字符串字面值 421 16.3.2 字符串连接 421 16.3.3 字符串和其他数据类型的连接 421 16.3.4 字符串转换和toString()方法 422 16.4 提取字符 423 16.4.1 charAt() 424 16.4.2 getChars() 424 16.4.3 getBytes() 424 16.4.4 toCharArray() 425 16.5 比较字符串 425 16.5.1 equals()和equalsIgnoreCase() 425 16.5.2 regionMatches() 426 16.5.3 startsWith()和endsWith() 426 16.5.4 equals()与== 427 16.5.5 compareTo() 427 16.6 查找字符串 429 16.7 修改字符串 430 16.7.1 substring() 430 16.7.2 concat() 431 16.7.3 replace() 432 16.7.4 trim() 432 16.8 使用valueOf()转换数据 433 16.9 改变字符串中字符的大小写 434 16.10 连接字符串 434 16.11 其他String方法 435 16.12 StringBuffer类 436 16.12.1 StringBuffer类的构造函数 437 16.12.2 length()与capacity() 437 16.12.3 ensureCapacity() 438 16.12.4 setLength() 438 16.12.5 charAt()与setCharAt() 438 16.12.6 getChars() 439 16.12.7 append() 439 16.12.8 insert() 440 16.12.9 reverse() 440 16.12.10 delete()与deleteCharAt() 441 16.12.11 replace() 441 16.12.12 substring() 442 16.12.13 其他StringBuffer方法 442 16.13 StringBuilder类 443 第17章 探究java.lang 445 17.1 基本类型封装器 446 17.1.1 Number 446 17.1.2 Double与Float 447 17.1.3 理解isInfinite()与isNaN() 450 17.1.4 Byte、Short、Integer和Long 451 17.1.5 Character 459 17.1.6 对Unicode代码点的附加支持 462 17.1.7 Boolean 463 17.2 Void类 464 17.3 Process类 464 17.4 Runtime类 465 17.4.1 内存管理 466 17.4.2 执行其他程序 467 17.5 ProcessBuilder类 469 17.6 System类 471 17.6.1 使用currentTimeMillis()计时程序的执行 472 17.6.2 使用arraycopy() 473 17.6.3 环境属性 474 17.7 Object类 474 17.8 使用clone()方法和Cloneable接口 475 17.9 Class类 477 17.10 ClassLoader类 480 17.11 Math类 481 17.11.1 三角函数 481 17.11.2 指数函数 481 17.11.3 舍入函数 482 17.11.4 其他数学方法 483 17.12 StrictMath类 485 17.13 Compiler类 485 17.14 Thread类、ThreadGroup类和Runnable接口 485 17.14.1 Runnable接口 485 17.14.2 Thread类 486 17.14.3 ThreadGroup类 488 17.15 ThreadLocal和 0 InheritableThreadLocal类 492 17.16 Package类 492 17.17 RuntimePermission类 494 17.18 Throwable类 494 17.19 SecurityManager类 494 17.20 StackTraceElement类 494 17.21 Enum类 495 17.22 ClassValue类 496 17.23 CharSequence接口 496 17.24 Comparable接口 496 17.25 Appendable接口 497 17.26 Iterable接口 497 17.27 Readable接口 498 17.28 AutoCloseable接口 498 17.29 Thread.UncaughtExceptionHandler接口 498 17.30 java.lang子包 499 17.30.1 java.lang.annotation 499 17.30.2 java.lang.instrument 499 17.30.3 java.lang.invoke 499 17.30.4 java.lang.management 499 17.30.5 java.lang.ref 499 17.30.6 java.lang.reflect 499 第18章 java.util第1部分:集合框架 501 18.1 集合概述 503 18.2 JDK 5对集合框架的修改 504 18.2.1 泛型从根本上改变了集合框架 504 18.2.2 自动装箱使得使用基本类型更加容易 504 18.2.3 for-each风格的for循环 505 18.3 集合接口 505 18.3.1 Collection接口 506 18.3.2 List接口 508 18.3.3 Set接口 509 18.3.4 SortedSet接口 509 18.3.5 NavigableSet接口 510 18.3.6 Queue接口 511 18.3.7 Deque接口 512 18.4 集合类 514 18.4.1 ArrayList类 515 18.4.2 LinkedList类 518 18.4.3 HashSet类 520 18.4.4 LinkedHashSet类 521 18.4.5 TreeSet类 521 18.4.6 PriorityQueue类 523 18.4.7 ArrayDeque类 523 18.4.8 EnumSet类 524 18.5 通过迭代器访问集合 525 18.5.1 使用迭代器 527 18.5.2 使用for-each循环替代迭代器 528 18.6 Spliterator 529 18.7 在集合中存储用户定义的类 532 18.8 RandomAccess接口 533 18.9 使用映射 534 18.9.1 映射接口 534 18.9.2 映射类 539 18.10 比较器 544 18.11 集合算法 552 18.12 Arrays类 558 18.13 遗留的类和接口 563 18.13.1 Enumeration接口 564 18.13.2 Vector类 564 18.13.3 Stack类 568 18.13.4 Dictionary类 570 18.13.5 Hashtable类 571 18.13.6 Properties类 574 18.13.7 使用store()和load() 578 18.14 集合小结 580 第19章 java.util第2部分:更多实用工具类 581 19.1 StringTokenizer类 581 19.2 BitSet类 583 19.3 Optional、OptionalDouble、OptionalInt和OptionalLong 586 19.4 Date类 588 19.5 Calendar类 590 19.6 GregorianCalendar类 593 19.7 TimeZone类 595 19.8 SimpleTimeZone类 596 19.9 Locale类 597 19.10 Random类 598 19.11 Observable类 600 19.11.1 Observer接口 601 19.11.2 Observer示例 601 19.12 Timer和TimerTask类 604 19.13 Currency类 606 19.14 Formatter类 607 19.14.1 Formatter类的构造函数 607 19.14.2 Formatter类的方法 608 19.14.3 格式化的基础知识 609 19.14.4 格式化字符串和字符 611 19.14.5 格式化数字 611 19.14.6 格式化时间和日期 612 19.14.7 %n和%%说明符 614 19.14.8 指定最小字段宽度 614 19.14.9 指定精度 616 19.14.10 使用格式标志 617 19.14.11 对齐输出 617 19.14.12 空格、“+”、“0”以及“(”标志 618 19.14.13 逗号标志 619 19.14.14 “#”标志 619 19.14.15 大写选项 619 19.14.16 使用参数索引 620 19.14.17 关闭Formatter对象 621 19.14.18 printf()方法 622 19.15 Scanner类 622 19.15.1 Scanner类的构造函数 622 19.15.2 扫描的基础知识 623 19.15.3 一些Scanner示例 626 19.15.4 设置定界符 630 19.15.5 其他Scanner特性 632 19.16 ResourceBundle、ListResourceBundle和 633 19.17 其他实用工具类和接口 637 19.18 java.util子包 638 19.18.1 java.util.concurrent、java.util.concurrent.atomic和 java.util.concurrent.locks 638 19.18.2 java.util.function 638 19.18.3 java.util.jar 641 19.18.4 java.util.logging 641 19.18.5 java.util.prefs 641 19.18.6 java.util.regex 641 19.18.7 java.util.spi 642 19.18.8 java.util.stream 642 19.18.9 java.util.zip 642 第20章 输入/输出:探究java.io 643 20.1 I/O类和接口 644 20.2 File类 645 20.2.1 目录 648 20.2.2 使用FilenameFilter接口 649 20.2.3 listFiles()方法 650 20.2.4 创建目录 650 20.3 AutoCloseable、Closeable和Flushable接口 650 20.4 I/O异常 651 20.5 关闭流的两种方式 651 20.6 流类 653 20.7 字节流 653 20.7.1 InputStream类 653 20.7.2 OutputStream类 654 20.7.3 FileInputStream类 654 20.7.4 FileOutputStream类 656 20.7.5 ByteArrayInputStream类 659 20.7.6 ByteArrayOutputStream类 660 20.7.7 过滤的字节流 662 20.7.8 缓冲的字节流 662 20.7.9 SequenceInputStream类 666 20.7.10 PrintStream类 667 20.7.11 DataOutputStream和DataInputStream类 670 20.7.12 RandomAccessFile类 671 20.8 字符流 672 20.8.1 Reader类 672 20.8.2 Writer类 673 20.8.3 FileReader类 674 20.8.4 FileWriter类 675 20.8.5 CharArrayReader类 676 20.8.6 CharArrayWriter类 677 20.8.7 BufferedReader类 678 20.8.8 BufferedWriter类 680 20.8.9 PushbackReader类 680 20.8.10 PrintWriter类 681 20.9 Console类 682 20.10 串行化 684 20.10.1 Serializable接口 684 20.10.2 Externalizable接口 685 20.10.3 ObjectOutput接口 685 20.10.4 ObjectOutputStream类 685 20.10.5 ObjectInput接口 686 20.10.6 ObjectInputStream类 687 20.10.7 串行化示例 688 20.11 流的优点 690 第21章 探究NIO 691 21.1 NIO类 691 21.2 NIO的基础知识 692 21.2.1 缓冲区 692 21.2.2 通道 694 21.2.3 字符集和选择器 695 21.3 JDK 7对NIO的增强 696 21.3.1 Path接口 696 21.3.2 Files类 697 21.3.3 Path接口 700 21.3.4 文件属性接口 700 21.3.5 FileSystem、FileSystems和FileStore类 702 21.4 使用NIO系统 702 21.4.1 为基于通道的I/O使用NIO 703 21.4.2 为基于流的I/O使用NIO 712 21.4.3 为路径和文件系统操作使用NIO 714 21.5 JDK 7之前基于通道的例子 722 21.5.1 读文件(JDK 7之前) 722 21.5.2 写文件(JDK 7之前) 726 第22章 联网 729 22.1 联网的基础知识 730 22.2 联网类和接口 731 22.3 InetAddress类 732 22.3.1 工厂方法 732 22.3.2 实例方法 733 22.4 Inet4Address类和Inet6Address类 733 22.5 TCP/IP客户端套接字 734 22.6 URL类 737 22.7 URLConnection类 739 22.8 HttpURLConnection类 741 22.9 URI类 744 22.10 cookie 744 22.11 TCP/IP服务器套接字 744 22.12 数据报 745 22.12.1 DatagramSocket类 745 22.12.2 DatagramPacket类 746 22.12.3 数据报示例 747 第23章 Applet类 749 23.1 applet的两种类型 749 23.2 applet的基础知识 750 23.3 applet的架构 753 23.4 applet的骨架 753 23.4.1 applet的初始化和终止 755 23.4.2 重写update()方法 756 23.5 简单的applet显示方法 756 23.6 请求重画 758 23.7 使用状态栏窗口 761 23.8 HTML APPLET标记 762 23.9 向applet传递参数 763 23.10 getDocumentBase()和getCodeBase() 766 23.11 AppletContext接口和showDocument()方法 767 23.12 AudioClip接口 769 23.13 AppletStub接口 769 23.14 向控制台输出 769 第24章 事件处理 771 24.1 两种事件处理机制 772 24.2 委托事件模型 772 24.2.1 事件 772 24.2.2 事件源 772 24.2.3 事件监听器 773 24.3 事件类 773 24.3.1 ActionEvent类 775 24.3.2 AdjustmentEvent类 775 24.3.3 ComponentEvent类 776 24.3.4 ContainerEvent类 777 24.3.5 FocusEvent类 777 24.3.6 InputEvent类 778 24.3.7 ItemEvent类 779 24.3.8 KeyEvent类 779 24.3.9 MouseEvent类 780 24.3.10 MouseWheelEvent类 782 24.3.11 TextEvent类 783 24.3.12 WindowEvent类 783 24.4 事件源 784 24.5 事件监听器接口 784 24.5.1 ActionListener接口 785 24.5.2 AdjustmentListener接口 785 24.5.3 ComponentListener接口 785 24.5.4 ContainerListener接口 786 24.5.5 FocusListener接口 786 24.5.6 ItemListener接口 786 24.5.7 KeyListener接口 786 24.5.8 MouseListener接口 786 24.5.9 MouseMotionListener接口 787 24.5.10 MouseWheelListener接口 787 24.5.11 TextListener接口 787 24.5.12 WindowFocusListener接口 787 24.5.13 WindowListener接口 787 24.6 使用委托事件模型 788 24.6.1 处理鼠标事件 788 24.6.2 处理键盘事件 791 24.7 适配器类 794 24.8 内部类 795 第25章 AWT介绍:使用窗口、图形和文本 799 25.1 AWT类 800 25.2 窗口基本元素 802 25.2.1 Component类 803 25.2.2 Container类 803 25.2.3 Panel类 803 25.2.4 Window类 803 25.2.5 Frame类 803 25.2.6 Canvas类 803 25.3 使用框架窗口 804 25.3.1 设置窗口的尺寸 804 25.3.2 隐藏和显示窗口 804 25.3.3 设置窗口的标题 804 25.3.4 关闭框架窗口 805 25.4 在基于AWT的applet中创建框架窗口 805 25.5 创建基于窗口的程序 811 25.6 在窗口中显示信息 813 25.7 使用图形 814 25.7.1 绘制直线 814 25.7.2 绘制矩形 814 25.7.3 绘制椭圆和圆 815 25.7.4 绘制弧形 815 25.7.5 绘制多边形 815 25.7.6 演示绘制方法 815 25.7.7 改变图形的大小 817 25.8 使用颜色 818 25.8.1 Color类的方法 819 25.8.2 设置当前图形的颜色 820 25.8.3 一个演示颜色的applet 820 25.9 设置绘图模式 821 25.10 使用字体 823 25.10.1 确定可用字体 824 25.10.2 创建和选择字体 825 25.10.3 获取字体信息 827 25.11 使用FontMetrics管理文本输出 828 25.11.1 显示多行文本 829 25.11.2 居中显示文本 831 25.11.3 对齐多行文本 832 第26章 使用AWT控件、布局管理器和菜单 837 26.1 AWT控件的基础知识 838 26.1.1 添加和移除控件 838 26.1.2 响应控件 839 26.1.3 HeadlessException异常 839 26.2 使用标签 839 26.3 使用命令按钮 840 26.4 使用复选框 844 26.5 使用复选框组 846 26.6 使用下拉列表 847 26.7 使用列表框 849 26.8 管理滚动条 852 26.9 使用TextField 855 26.10 使用TextArea 857 26.11 理解布局管理器 859 26.11.1 FlowLayout布局管理器 859 26.11.2 BorderLayout布局管理器 861 26.11.3 使用Insets 863 26.11.4 GridLayout布局管理器 864 26.11.5 CardLayout布局管理器 866 26.11.6 GridBagLayout布局管理器 869 26.12 菜单栏和菜单 874 26.13 对话框 879 26.14 FileDialog类 885 26.15 关于重写paint()方法 886 第27章 图像 889 27.1 文件格式 890 27.2 图像基础:创建、加载与显示 890 27.2.1 创建Image对象 890 27.2.2 加载图像 891 27.2.3 显示图像 891 27.3 ImageObserver接口 893 27.4 双缓冲 894 27.5 MediaTracker类 896 27.6 ImageProducer接口 899 27.7 ImageConsumer接口 901 27.8 ImageFilter类 904 27.8.1 CropImageFilter类 904 27.8.2 RGBImageFilter类 906 27.9 其他图像类 917 第28章 并发实用工具 919 28.1 并发API包 920 28.1.1 java.util.concurrent包 920 28.1.2 java.util.concurrent.atomic包 921 28.1.3 java.util.concurrent.locks包 921 28.2 使用同步对象 921 28.2.1 Semaphore类 922 28.2.2 CountDownLatch类 927 28.2.3 CyclicBarrier类 929 28.2.4 Exchanger类 932 28.2.5 Phaser类 934 28.3 使用执行器 941 28.3.1 一个简单的执行器示例 942 28.3.2 使用Callable和Future接口 944 28.4 TimeUnit枚举 947 28.5 并发集合 948 28.6 锁 949 28.7 原子操作 951 28.8 通过Fork/Join框架进行并行编程 953 28.8.1 主要的Fork/Join类 953 28.8.2 分而治之的策略 956 28.8.3 一个简单的Fork/Join示例 957 28.8.4 理解并行级别带来的影响 960 28.8.5 一个使用RecursiveTask<V>的例子 963 28.8.6 异步执行任务 965 28.8.7 取消任务 966 28.8.8 确定任务的完成状态 966 28.8.9 重新启动任务 966 28.8.10 深入研究 967 28.8.11 关于Fork/Join框架的一些提示 968 28.9 并发实用工具与Java传统方式的比较 968 第29章 流API 971 29.1 流的基础知识 972 29.1.1 流接口 972 29.1.2 如何获得流 974 29.1.3 一个简单的流示例 975 29.2 缩减操作 978 29.3 使用并行流 980 29.4 映射 983 29.5 收集 987 29.6 迭代器和流 991 29.6.1 对流使用迭代器 991 29.6.2 使用Spliterator 992 29.7 流API中更多值得探究的地方 995 第30章 正则表达式和其他包 997 30.1 核心Java API包 998 30.2 正则表达式处理 1000 30.2.1 Pattern类 1000 30.2.2 Matcher类 1000 30.2.3 正则表达式的语法 1001 30.2.4 演示模式匹配 1002 30.2.5 模式匹配的两个选项 1007 30.2.6 探究正则表达式 1008 30.3 反射 1008 30.4 远程方法调用 1012 30.5 使用java.text格式化日期和时间 1015 30.5.1 DateFormat类 1015 30.5.2 SimpleDateFormat类 1017 30.6 JDK 8新增的时间和日期API 1019 30.6.1 时间和日期的基础知识 1020 30.6.2 格式化日期和时间 1021 30.6.3 解析日期和时间字符串 1024 30.7 探究java.time包的其他方面 1025 第Ⅲ部分 使用Swing进行GUI编程 1027 第31章 Swing简介 1029 31.1 Swing的起源 1030 31.2 Swing以AWT为基础 1030 31.3 两个关键的Swing特性 1030 31.3.1 Swing组件是轻量级的 1031 31.3.2 Swing支持可插入外观 1031 31.4 MVC连接 1031 31.5 组件与容器 1032 31.5.1 组件 1032 31.5.2 容器 1033 31.5.3 顶级容器窗格 1033 31.6 Swing包 1034 31.7 一个简单的Swing应用程序 1034 31.8 事件处理 1038 31.9 创建Swing applet 1041 31.10 在Swing中绘图 1044 31.10.1 绘图的基础知识 1044 31.10.2 计算可绘制区域 1045 31.10.3 一个绘图示例 1045 第32章 探究Swing 1049 32.1 JLabel与ImageIcon 1050 32.2 JTextField 1051 32.3 Swing按钮 1053 32.3.1 JButton 1053 32.3.2 JToggleButton 1056 32.3.3 复选框 1058 32.3.4 单选按钮 1060 32.4 JTabbedPane 1063 32.5 JScrollPane 1065 32.6 JList 1067 32.7 JComboBox 1070 32.8 树 1073 32.9 JTable 1076 第33章 Swing菜单简介 1079 33.1 菜单的基础知识 1080 33.2 JMenuBar、JMenu和JMenuItem概述 1081 33.2.1 JMenuBar 1081 33.2.2 JMenu 1082 33.2.3 JMenuItem 1083 33.3 创建主菜单 1084 33.4 向菜单项添加助记符和加速键 1088 33.5 向菜单项添加图片和工具提示 1090 33.6 使用JRadioButtonMenuItem和JCheckBoxMenuItem 1091 33.7 创建弹出菜单 1094 33.8 创建工具栏 1096 33.9 使用动作 1099 33.10 完整演示MenuDemo程序 1104 33.11 继续探究Swing 1111 第Ⅳ部分 使用JavaFX进行GUI编程 1113 第34章 JavaFX GUI编程简介 1115 34.1 JavaFX的基础概念 1116 34.1.1 JavaFX包 1116 34.1.2 Stage和Scene类 1117 34.1.3 节点和场景图 1117 34.1.4 布局 1117 34.1.5 Application类和生命周期方法 1117 34.1.6 启动JavaFX应用程序 1118 34.2 JavaFX应用程序的骨架 1118 34.3 编译和运行JavaFX程序 1121 34.4 应用程序线程 1122 34.5 一个简单的JavaFX控件:Label 1122 34.6 使用按钮和事件 1124 34.6.1 事件的基础知识 1124 34.6.2 按钮控件简介 1125 34.6.3 演示事件处理和按钮 1125 34.7 直接在画布上绘制 1128 第35章 探究JavaFX控件 1135 35.1 使用Image和ImageView 1136 35.1.1 向标签添加图片 1138 35.1.2 在按钮中使用图片 1140 35.2 ToggleButton 1143 35.3 RadioButton 1145 35.3.1 处理开关组中的变化事件 1149 35.3.2 处理单选按钮的另一种方式 1150 35.4 CheckBox 1152 35.5 ListView 1156 35.5.1 ListView的滚动条 1160 35.5.2 启用多项选择 1160 35.6 ComboBox 1161 35.7 TextField 1164 35.8 ScrollPane 1167 35.9 TreeView 1170 35.10 效果和变换简介 1175 35.10.1 效果 1175 35.10.2 变换 1176 35.10.3 演示效果和变换 1177 35.11 添加工具提示 1180 35.12 禁用控件 1181 第36章 JavaFX菜单简介 1183 36.1 菜单的基础知识 1184 36.2 MenuBar、Menu和MenuItem概述 1185 36.2.1 MenuBar 1185 36.2.2 Menu 1186 36.2.3 MenuItem 1186 36.3 创建主菜单 1187 36.4 向菜单项添加助记符和加速键 1193 36.5 向菜单项添加图片 1194 36.6 使用RadioMenuItem和CheckMenuItem 1195 36.7 创建上下文菜单 1197 36.8 创建工具栏 1200 36.9 完整的MenuDemo程序 1202 36.10 继续探究JavaFX 1209 第Ⅴ部分 应用Java 1211 第37章 Java Bean 1213 37.1 Java Bean是什么 1214 37.2 Java Bean的优势 1214 37.3 内省 1214 37.3.1 属性的设计模式 1214 37.3.2 事件的设计模式 1216 37.3.3 方法与设计模式 1216 37.3.4 使用BeanInfo接口 1216 37.4 绑定属性与约束属性 1217 37.5 持久性 1217 37.6 定制器 1218 37.7 Java Bean API 1218 37.7.1 Introspector类 1219 37.7.2 PropertyDescriptor类 1220 37.7.3 EventSetDescriptor类 1220 37.7.4 MethodDescriptor类 1220 37.8 一个Bean示例 1220 第38章 servlet 1225 38.1 背景 1225 38.2 servelet的生命周期 1226 38.3 servlet开发选项 1227 38.4 使用Tomcat 1227 38.5 一个简单的servlet 1229 38.5.1 创建和编译servlet源代码 1229 38.5.2 启动Tomcat 1230 38.5.3 启动Web浏览器并请求servlet 1230 38.6 Servlet API 1230 38.7 javax.servlet包 1230 38.7.1 Servlet接口 1231 38.7.2 ServletConfig接口 1231 38.7.3 ServletContext接口 1232 38.7.4 ServletRequest接口 1232 38.7.5 ServletResponse接口 1233 38.7.6 GenericServlet类 1233 38.7.7 ServletInputStream类 1234 38.7.8 ServletOutputStream类 1234 38.7.9 servlet异常类 1234 38.8 读取servlet参数 1234 38.9 javax.servlet.http包 1236 38.9.1 HttpServletRequest接口 1236 38.9.2 HttpServletResponse接口 1237 38.9.3 HttpSession接口 1238 38.9.4 Cookie类 1239 38.9.5 HttpServlet类 1240 38.10 处理HTTP请求和响应 1241 38.10.1 处理HTTP GET请求 1241 38.10.2 处理HTTP POST请求 1243 38.11 使用cookie 1244 38.12 会话跟踪 1246 附录 使用Java的文档注释 1249

立即下载
perl 函数全集(绝版)

perl学习的好料 perl函数全集 这方面的资料极少哦,请抓住哦

立即下载
perl24小时编程教程

perl编程24小时教程:详细介绍了perl语言,内容丰富,值得参考

立即下载
perl经典教程

perl编程书籍 开发人员的必备法宝 perl经典教程 供开发人员参考学习之用

立即下载
PERL5教程,函数全集与CGI应用

PERL5教程,函数全集与CGI应用.PERL5教程,函数全集与CGI应用.

立即下载
smt贴片机教程全集

smt贴片机教程全集

立即下载
MQL5语言必备参考手册(中文完整版)

MQL5是前任MQL4语言的发展,其中编辑进去许多指标,脚本和EA交易。 MQL5语言参考手册中文版.chm是MQL5编程必备参考手册,完整标签,完整文字版 MQL5参考 目录 语言基础 标准常量,列举和架构 MQL5 程序 预定义变量 普通函数 使用数组的函数组 函数转换 数学函数 字符串函数 日期和时间 账户信息 启动检测 获取市场信息 访问时间序列和指标数据 图表操作 交易函数 程序端全局变量 文件函数 自定义指标 物件函数 技术指标函数 事件函数 标准程序库

立即下载
PowerPoint VBA 编程参考 CHM.rar

PowerPoint VBA 编程参考 VBA 编程必备

立即下载
PERL编程24小时教程

perl 编程 24小时教程。 perl programming

立即下载
excel2016视频教程

excel2016 视频教程同样适用于excel2013版,适合新手使用。百度网盘分享

立即下载
VB函数全集

VB函数全集!VB编程的好帮手!

立即下载
perl基本教程

perl 教程基础入门篇,包括基本的Perl函数

立即下载
关闭
img

spring mvc+mybatis+mysql+maven+bootstrap 整合实现增删查改简单实例.zip

资源所需积分/C币 当前拥有积分 当前拥有C币
5 0 0
点击完成任务获取下载码
输入下载码
为了良好体验,不建议使用迅雷下载
img

Perl 教程 编程参考 函数全集

会员到期时间: 剩余下载个数: 剩余C币: 剩余积分:0
为了良好体验,不建议使用迅雷下载
VIP下载
您今日下载次数已达上限(为了良好下载体验及使用,每位用户24小时之内最多可下载20个资源)

积分不足!

资源所需积分/C币 当前拥有积分
您可以选择
开通VIP
4000万
程序员的必选
600万
绿色安全资源
现在开通
立省522元
或者
购买C币兑换积分 C币抽奖
img

资源所需积分/C币 当前拥有积分 当前拥有C币
5 4 45
为了良好体验,不建议使用迅雷下载
确认下载
img

资源所需积分/C币 当前拥有积分 当前拥有C币
5 0 0
为了良好体验,不建议使用迅雷下载
VIP和C币套餐优惠
img

资源所需积分/C币 当前拥有积分 当前拥有C币
5 4 45
您的积分不足,将扣除 10 C币
为了良好体验,不建议使用迅雷下载
确认下载
下载
您还未下载过该资源
无法举报自己的资源

兑换成功

你当前的下载分为234开始下载资源
你还不是VIP会员
开通VIP会员权限,免积分下载
立即开通

你下载资源过于频繁,请输入验证码

您因违反CSDN下载频道规则而被锁定帐户,如有疑问,请联络:webmaster@csdn.net!

举报

若举报审核通过,可返还被扣除的积分

  • 举报人:
  • 被举报人:
  • *类型:
    • *投诉人姓名:
    • *投诉人联系方式:
    • *版权证明:
  • *详细原因: