本书是Sun公司指定的Java语言入门教程。本书由Java语言和平台开发团队的多位成员亲自撰写,并由众多世界级Java专家精心审稿,有力地保证了权威性和准确性。
本书采用久经检验的交互式教学方法,提供了许多来自实战的完整示例,书中清晰地阐述了对象、类和数据结构的基础。作为最新版本,本书涵盖了Java SE 6,增加了讲述泛型、集合JavaWeb Start、平台环境和正则表达式的章节,并大幅改写了线程、I/O、面向对象编程概念和语言基础等内容。
网站首页 软件下载 游戏下载 翻译软件 电子书下载 电影下载 电视剧下载 教程攻略
书名 | Java教程(第4版)/图灵计算机科学丛书 |
分类 | |
作者 | (美)扎克霍尔 |
出版社 | 人民邮电出版社 |
下载 | ![]() |
简介 | 编辑推荐 本书是Sun公司指定的Java语言入门教程。本书由Java语言和平台开发团队的多位成员亲自撰写,并由众多世界级Java专家精心审稿,有力地保证了权威性和准确性。 本书采用久经检验的交互式教学方法,提供了许多来自实战的完整示例,书中清晰地阐述了对象、类和数据结构的基础。作为最新版本,本书涵盖了Java SE 6,增加了讲述泛型、集合JavaWeb Start、平台环境和正则表达式的章节,并大幅改写了线程、I/O、面向对象编程概念和语言基础等内容。 内容推荐 本书是Sun公司指定Java教程的最新版。书中除了讲解面向对象的编程概念、语言基础、类和对象、接口和继承、包、数字和字符串、异常、基本I/O、集合、并发、Swing、把程序打包到JAR文件中、applet之外,还介绍了Java Web Start、平台环境和正则表达式,同时涵盖了Java 5.0和6.0引入的新特性,比如泛型和并发、注解。附录B中还给出如何准备Java编程语言认证考试方面的内容。此外,本书配套的网上资源还包含本书的示例以及问题和练习的答案、在线Java SE指南、Java SE开发工具包(Java SE Development Kit,JDK)、相应的API规范和指导文档等。 本书既适合作为高校相关专业Java程序设计语言课程的教材,也适合各种层次的Java程序员阅读。 目录 第1章 入门 1 1.1 Java技术现象 1 1.1.1 关于Java技术 1 1.1.2 Java技术能做什么 3 1.1.3 Java技术将如何改变我们的生活 3 1.2 “Hello World!”应用程序 4 1.2.1 使用NetBeans IDE编写“Hello World!” 4 1.2.2 在Microsoft Windows平台上编写“Hello World!” 9 1.2.3 在Solaris OS和Linux平台上编写“Hello World!” 12 1.3 分析“Hello World!”应用程序 15 1.3.1 源代码注释 16 1.3.2 HelloWorldApp类定义 16 1.3.3 main方法 16 1.4 常见问题(和解决方案) 17 1.4.1 编译器问题 17 1.4.2 运行时问题 18 问题和练习:入门 19 第2章 面向对象的编程概念 21 2.1 对象是什么 21 2.2 类是什么 22 2.3 继承是什么 24 2.4 接口是什么 24 2.5 包是什么 25 问题和练习:面向对象的编程概念 25 第3章 语言基础 27 3.1 变量 27 3.1.1 命名 28 3.1.2 基本数据类型 28 3.1.3 数组 30 3.1.4 变量小结 33 问题和练习:变量 34 3.2 操作符 34 3.2.1 赋值、算术和一元操作符 35 3.2.2 相等、关系和条件操作符 37 3.2.3 位操作符和移位操作符 39 3.2.4 操作符小结 40 问题和练习:操作符 41 3.3 表达式、语句和块 42 3.3.1 表达式 42 3.3.2 语句 42 3.3.3 块 43 问题和练习:表达式、语句和块 43 3.4 控制流语句 44 3.4.1 if-then和if-then-else语句 44 3.4.2 switch语句 45 3.4.3 while和do-while语句 47 3.4.4 for语句 48 3.4.5 分支语句 49 3.4.6 控制流语句小结 52 问题和练习:控制流语句 52 第4章 类和对象 54 4.1 类 54 4.1.1 声明类 55 4.1.2 声明成员变量 55 4.1.3 定义方法 57 4.1.4 为类提供构造器 58 4.1.5 把信息传递给方法或构造器 59 4.2 对象 62 4.2.1 创建对象 63 4.2.2 使用对象 66 4.3 关于类的更多介绍 67 4.3.1 从方法返回值 68 4.3.2 使用关键字this 69 4.3.3 控制对类成员的访问 70 4.3.4 了解实例成员和类成员 72 4.3.5 初始化字段 75 4.3.6 创建和使用类和对象的小结 76 问题和练习:类 76 问题和练习:对象 77 4.4 嵌套类 78 4.4.1 为什么使用嵌套类 78 4.4.2 静态嵌套类 79 4.4.3 内部类 79 4.4.4 内部类示例 80 4.4.5 嵌套类小结 81 问题和练习:嵌套类 82 4.5 枚举类型 83 问题和练习:枚举类型 85 4.6 注解 86 4.6.1 文档 86 4.6.2 编译器使用的注解 87 4.6.3 注解处理 88 问题和练习:注解 88 第5章 接口和继承 90 5.1 接口 90 5.1.1 Java中的接口 90 5.1.2 接口作为API 91 5.1.3 接口和多重继承 91 5.1.4 定义接口 91 5.1.5 实现接口 92 5.1.6 使用接口作为类型 93 5.1.7 重新编写接口 94 5.1.8 接口小结 95 问题和练习:接口 95 5.2 继承 95 5.2.1 Java平台类层次结构 96 5.2.2 继承示例 96 5.2.3 在子类中能进行什么操作 97 5.2.4 子类中的私有成员 98 5.2.5 对象的类型转换 98 5.2.6 覆盖和隐藏方法 99 5.2.7 隐藏字段 100 5.2.8 使用关键字super 100 5.2.9 Object作为超类 101 5.2.10 编写最终类和方法 104 5.2.11 抽象方法和抽象类 104 5.2.12 继承小结 106 问题和练习:继承 106 第6章 泛型 108 6.1 简介 108 6.2 泛型类型 109 6.3 泛型方法和构造器 111 6.4 受限类型参数 112 6.5 子类型化 113 6.6 通配符 114 6.7 类型擦除 115 6.8 泛型小结 116 问题和练习:泛型 117 第7章 包 118 7.1 创建和使用包 118 7.1.1 创建包 119 7.1.2 命名包 120 7.1.3 使用包成员 121 7.1.4 管理源文件和类文件 123 7.1.5 创建和使用包小结 124 问题和练习:创建和使用包 124 第8章 数字和字符串 126 8.1 数字 126 8.1.1 数字类 126 8.1.2 格式化数字输出 128 8.1.3 高级算术功能 131 8.1.4 数字小结 134 问题和练习:数字 134 8.2 字符 136 8.3 字符串 137 8.3.1 创建字符串 138 8.3.2 字符串长度 138 8.3.3 连接字符串 139 8.3.4 创建格式化字符串 139 8.3.5 在数字和字符串之间进行转换 140 8.3.6 处理字符串中的字符 141 8.3.7 比较字符串和部分字符串 145 8.3.8 StringBuilder类 146 8.3.9 字符和字符串小结 149 问题和练习:字符和字符串 150 第9章 异常 151 9.1 异常是什么 151 9.2 捕获或者指定需求 152 9.2.1 异常的三种类型 152 9.2.2 绕过捕获或者指定 153 9.3 捕获和处理异常 153 9.3.1 try块 154 9.3.2 catch块 154 9.3.3 finally块 155 9.3.4 结合使用 156 9.4 指定方法抛出的异常 159 9.5 如何抛出异常 159 9.5.1 throw语句 160 9.5.2 Throwable类及其子类 160 9.5.3 Error类 161 9.5.4 Exception类 161 9.5.5 链式异常 161 9.5.6 创建异常类 162 9.6 关于不可控异常的争论 163 9.7 异常的优点 164 9.7.1 优点一:把错误处理代码和“常规”代码分离开 164 9.7.2 优点二:把错误沿调用栈向上传递 165 9.7.3 优点三:对错误类型进行分组和区分 166 9.8 小结 167 问题和练习:异常 167 第10章 基本I/O 169 10.1 I/O流 169 10.1.1 字节流 170 10.1.2 字符流 171 10.1.3 缓冲流 174 10.1.4 扫描和格式化 174 10.1.5 命令行I/O 179 10.1.6 数据流 180 10.1.7 对象流 182 10.2 文件I/O 185 10.2.1 File对象 185 10.2.2 随机访问文件 187 10.3 新I/O包 189 10.4 小结 189 问题和练习:基本I/O 189 第11章 集合 190 11.1 集合简介 190 11.1.1 集合框架是什么 190 11.1.2 Java集合框架的优势 190 11.2 接口 191 11.2.1 Collection接口 192 11.2.2 Set接口 195 11.2.3 List接口 198 11.2.4 Queue接口 204 11.2.5 Map接口 206 11.2.6 对象排序 212 11.2.7 SortedSet接口 216 11.2.8 SortedMap接口 219 11.2.9 接口小结 219 问题和练习:接口 220 11.3 实现 221 11.3.1 Set实现 222 11.3.2 List实现 223 11.3.3 Map实现 224 11.3.4 Queue实现 225 11.3.5 包装器实现 226 11.3.6 简便实现 227 11.3.7 实现小结 228 问题和练习:实现 229 11.4 算法 229 11.4.1 排序 229 11.4.2 混序 231 11.4.3 常规数据操作 231 11.4.4 搜索 231 11.4.5 组合 232 11.4.6 查找极值 232 11.5 定制集合实现 232 11.5.1 编写实现的原因 232 11.5.2 如何编写定制实现 233 11.6 互操作性 234 11.6.1 兼容性 235 11.6.2 API设计 236 第12章 并发 238 12.1 进程和线程 238 12.1.1 进程 238 12.1.2 线程 238 12.2 Thread对象 239 12.2.1 定义和启动线程 239 12.2.2 使用sleep暂停执行 240 12.2.3 中断 240 12.2.4 join 241 12.2.5 SimpleThreads示例 242 12.3 同步 243 12.3.1 线程干扰 243 12.3.2 内存一致性错误 244 12.3.3 同步方法 245 12.3.4 内在锁和同步 246 12.3.5 原子访问 247 12.4 活性 247 12.4.1 死锁 247 12.4.2 饿死和活锁 248 12.5 保护块 249 12.6 不可变对象 252 12.6.1 同步类示例 252 12.6.2 定义不可变对象的策略 253 12.7 高级并发对象 255 12.7.1 Lock对象 255 12.7.2 执行器 257 12.7.3 并发集合 258 12.7.4 原子变量 259 12.8 推荐阅读 260 问题和练习:并发 260 第13章 正则表达式 262 13.1 简介 262 13.1.1 正则表达式是什么 262 13.1.2 这个包如何表示正则表达式 262 13.2 测试示例 263 13.3 字符串字面量 263 13.4 字符类 264 13.5 预定义字符类 268 13.6 量词 270 13.6.1 零长度匹配 270 13.6.2 使用量词的捕获组和字符类 273 13.6.3 greedy、reluctant和possessive量词的区别 273 13.7 捕获组 274 13.7.1 编号 274 13.7.2 反向引用 275 13.8 边界匹配器 275 13.9 Pattern类的方法 277 13.9.1 创建带有标志的模式 277 13.9.2 嵌入标志表达式 278 13.9.3 使用matches(String,CharSequence)方法 279 13.9.4 使用split(String)方法 279 13.9.5 其他工具方法 280 13.9.6 java.lang.String中和Pattren等同的方法 280 13.10 Matcher类的方法 280 13.10.1 索引方法 280 13.10.2 研究方法 281 13.10.3 替换方法 281 13.10.4 使用start和end方法 281 13.10.5 使用matches和lookingAt方法 282 13.10.6 使用replaceFirst(String)和replaceAll(String) 283 13.10.7 appendReplacement(StringBuffer,String)和appendTail(String-Buffer)方法 284 13.10.8 java.lang.String中和Matcher等同的方法 284 13.11 PatternSyntaxException类的方法 284 13.12 小结 286 13.13 附加资源 287 问题和练习:正则表达式 287 第14章 平台环境 288 14.1 配置工具 288 14.1.1 属性 288 14.1.2 命令行参数 291 14.1.3 环境变量 292 14.1.4 其他配置工具 293 14.2 系统工具 294 14.2.1 命令行I/O对象 294 14.2.2 系统属性 294 14.2.3 安全管理器 296 14.2.4 系统中的杂项方法 297 14.3 PATH和CLASSPATH 297 14.3.1 更新PATH变量(Microsoft Windows NT/2000/XP) 298 14.3.2 更新PATH变量(Solaris和Linux) 298 14.3.3 检查CLASSPATH变量(所有平台) 299 问题和练习:平台环境 299 第15章 Swing 301 15.1 Swing包概述 301 15.1.1 Swing是什么 301 15.1.2 Swing演示程序 302 15.2 Swing的特性 305 15.2.1 Swing组件的可视化指导 306 15.2.2 可插拔的界面外观 310 15.2.3 拖放和数据传输 311 15.2.4 国际化和本地化 311 15.2.5 可访问性 312 15.2.6 和桌面集成 312 15.2.7 系统托盘图标支持 313 问题和练习:图形化用户界面 313 第16章 把程序打包到JAR文件中 314 16.1 使用JAR文件:基础 314 16.1.1 创建JAR文件 315 16.1.2 查看JAR文件的内容 318 16.1.3 提取JAR文件的内容 318 16.1.4 更新JAR文件 319 16.1.5 运行JAR打包的软件 321 16.2 处理清单文件:基础 322 16.2.1 了解默认的清单 322 16.2.2 修改清单文件 322 16.2.3 设置应用程序的入口点 323 16.2.4 把类添加到JAR文件的类路径 324 16.2.5 设置包版本信息 324 16.2.6 在JAR文件中密封包 326 16.3 JAR文件的签名和验证 326 16.3.1 了解签名和验证 327 16.3.2 签名JAR文件 329 16.3.3 验证签名的JAR文件 330 16.4 使用和JAR相关的API 330 16.4.1 示例——应用程序JarRunner 330 16.4.2 JarClassLoader类 331 16.4.3 JarRunner类 333 问题和练习:JAR文件 334 第17章 Java Web Start 335 17.1 运行Java Web Start应用程序 336 17.1.1 从浏览器运行Java Web Start应用程序 336 17.1.2 从Java缓存查看器运行Java Web Start应用程序 336 17.1.3 从桌面运行Java Web Start应用程序 337 17.2 部署Java Web Start应用程序 337 17.2.1 设置Web服务器 337 17.2.2 创建JNLP文件 337 17.2.3 把应用程序放到服务器上 342 17.2.4 创建Web页面 342 17.3 开发Java Web Start应用程序 342 17.3.1 把应用程序打包到JAR文件中 342 17.3.2 读取JAR文件中的资源 343 17.3.3 不被信任的应用程序 343 17.4 JNLP API 343 17.5 Java Web Start和安全 344 17.5.1 Java Web Start安全基础 344 17.5.2 Java Web Start部署的签名JAR文件 345 17.5.3 安全和JNLP文件 345 17.5.4 HTTPS证书的动态下载 345 17.6 常见的Java Web Start问题 345 问题和练习:Java Web Start 346 第18章 applet 347 18.1 applet入门 348 18.1.1 扩展Applet或者JApplet 349 18.1.2 applet的生存周期 349 18.1.3 里程碑方法 351 18.1.4 用于绘制和事件处理的方法 352 18.1.5 用于添加UI组件的方法 354 18.1.6 applet能做什么,不能做什么 357 18.2 利用applet API的优势 357 18.2.1 查找和加载数据文件 358 18.2.2 显示简短状态字符串 359 18.2.3 在浏览器中显示文档 359 18.2.4 向其他applet发送消息 360 18.2.5 播放声音 363 18.2.6 定义和使用applet参数 365 18.2.7 使用APPLET标记 367 18.3 编写applet时的考虑事项 370 18.3.1 安全限制 370 18.3.2 创建用户界面 371 18.3.3 获得系统属性 373 18.3.4 applet中的线程 374 18.3.5 处理服务器端应用程序 376 18.4 完成applet 378 18.4.1 发布applet前的工作 378 18.4.2 圆满完成的applet 379 18.5 部署applet 380 18.5.1 一般的部署考虑事项 380 18.5.2 使用applet标记 380 18.5.3 使用object标记 380 18.5.4 使用embed标记 381 18.5.5 在混合浏览器环境中部署applet 382 18.6 解决常见的applet问题 383 问题和练习:Java applet 384 附录A Java语言关键字 385 附录B Java编程语言认证考试的准备 386 索引 394 本书配套资源 416 问题和练习答案(图灵网站下载) |
随便看 |
|
霍普软件下载网电子书栏目提供海量电子书在线免费阅读及下载。