这个页面需要启用JavaScript的浏览器才能正常运行。
新的是什么?旧的是什么?教程的历史
Java教程是为JDK 8编写的。本页面描述的示例和实践不利用后续版本中引入的改进,并可能使用不再可用的技术。
2022年3月4日 -
此版本修复了JDBC基础 课程中的问题,并更新了异常 课程中的try
-with-resources语句。
2021年11月15日 -
此教程版本对应于JDK 8u311版本。
此版本更正了对finally
块 的描述。
2021年7月30日 -
此教程版本对应于JDK 8u291版本。
此版本修复了拼写错误和链接错误。
2021年5月1日 -
此教程版本对应于JDK 8u291版本。
此版本修复了错误、拼写错误和链接错误,提供了额外的澄清,并恢复了简单API for XML 课程的示例程序。
2021年2月10日 -
此版本修复了链接错误。
2020年7月31日 -
此教程版本对应于JDK 8u261版本。
此版本包括以下更改:
2016年7月19日 -
此教程版本对应于JDK 8u101版本。
JAXP中添加了两个新的处理限制属性entityReplacementLimit
和maxXMLNameLimit
。有关详细信息,请参阅处理限制 。
2015年3月3日 -
此教程版本对应于JDK 8u40版本。
此版本包括部署路径中的新课程,介绍如何使用Java打包工具生成自包含应用程序。自包含应用程序是与运行所需的JRE捆绑在一起的Java应用程序。这些应用程序安装在用户的本地驱动器上,并以与本机应用程序相同的方式启动。有关详细信息,请参见部署自包含应用程序 。
2014年8月19日 -
本教程版本对应JDK 8u20版本。此版本包括以下更改:
Java控制面板中不再提供中等安全级别。要在本地运行小程序,请将其添加到Java控制面板的例外网站列表中。有关详细信息,请参见例外网站列表 。
JAXP中添加了一个新的处理限制属性maxElementDepth
。有关详细信息,请参见处理限制 。
Entry-Point属性是JAR文件清单的一个新属性。有关详细信息,请参见使用清单属性增强安全性 。
2014年3月18日 -
本教程版本对应JDK 8版本。有关此版本中的新功能的更多信息,请参见JDK 8的新功能 ,其中包括以下内容:
Lambda表达式 使您可以将功能视为方法参数或代码视为数据。Lambda表达式可以更紧凑地表示单方法接口(称为函数接口)的实例。
默认方法 是接口中具有实现的方法。它们允许向库的接口添加新功能,并确保与为旧版本接口编写的代码的二进制兼容性。
聚合操作 使您可以对元素流执行函数式操作,特别是对集合进行顺序或并行的映射-归约转换等批量操作。
日期时间 API使您可以表示日期和时间并操作日期和时间值。它们支持国际标准化组织(ISO)日历系统以及其他常用的全球日历。
类型注解 可与可插入式类型系统一起使用,以改进类型检查,而可重复注解 使得可以将相同的注解应用于声明或类型使用。
除了修复拼写错误和错误外,此更新还包括以下内容:
2014年1月14日 -
本教程版本对应于JDK 7u51版本。此版本包括以下内容:
2013年10月15日 -
本教程的发布对应于JDK 7u45版本。此版本包括以下内容:
“集合”教程已更新,推荐在JDK 8中使用首选的方法来遍历集合:获取流并调用其聚合操作。聚合操作通常与lambda表达式一起使用,可以使用更少的代码行使编程更有表达力。集合界面页面(Collection ,Set ,List ,Map )现在包含演示这个新语言特性的示例。
在增强安全性与清单属性 中介绍了其他清单条目。Java教程中的可启动示例已更新以使用这些新属性。
“JAXP”教程已更新,增加了一个新的处理限制 课程。
2013年9月10日 -
本教程的发布对应于JDK 7u40版本。此版本包括以下内容:
我们很高兴地宣布,作为JDK 8教程的早期访问更新的一部分,新的日期时间 教程已发布。基于标准ISO日历系统的类是JDK 8中即将推出的日期时间API的结果,它们提供了一个全面的日期和时间模型。新的教程涵盖了将日期和时间值转换为其他日历系统的信息。还有一个关于从java.util 日期类迁移到新的java.time API的旧版日期时间 页面。您可以从java.net 下载JDK 8的早期访问版本。
在“集合”教程中添加了一个聚合数据操作 课程。聚合操作是JDK 8中即将推出的一个新功能,可以代表您迭代处理存储在集合中的元素,使您编写更简洁高效的代码。
通过浏览器运行丰富互联网应用程序(RIA)可能对用户造成风险,因为其他人可能有恶意意图,通过其中的漏洞来访问用户的系统。在“部署”教程中的保护丰富互联网应用程序的指南 提供了使您的RIA更不易受攻击的建议。
在“国际化”教程的设置区域设置 课程中添加了一个新页面语言标签过滤和查找 。此页面讨论了语言标签、语言范围和语言优先级列表。它还包括关于语言标签过滤和语言标签查找的部分,其中有大量可以编译和运行的示例。
“JAXP”教程已更新,增加了一个新的JAXP 1.5和新属性 课程。
可以从Java SE教程下载页面 下载教程包和电子书,这些资源已经针对此版本进行了更新。
2013年6月18日 -
可下载的教程包 已经针对此版本进行了更新。
本教程与JDK 7u25版本相对应。JDK 7u25版本引入了新的JAR文件清单属性,用于防止未经授权的代码重用的富互联网应用程序(RIA)。 Permissions 和 Codebase 属性在增强JAR文件的安全性 中有详细描述。在部署小程序 和部署Java Web Start应用程序 部分描述了如何在清单中包含这些属性。
在部署最佳实践 和富互联网应用程序安全性 中增加了部署RIA的额外提示。
在签名JAR文件 中添加了有关时间戳签名JAR文件的信息。根据Java控制面板中设置的安全级别,具有过期证书的RIA可能无法运行。但是,如果签名有时间戳并且时间戳显示在签名RIA时证书有效,则允许运行RIA。
2013年4月16日 -
部署电子书(mobi和epub格式)已经针对此版本进行了更新。
本教程与JDK 7u21版本相对应。JDK 7u21版本使用户在运行富互联网应用程序(RIA)之前可以更明智地做出决策,通过在运行RIA之前向用户提示权限。提示包含有关用于签署应用程序和应用程序请求的访问级别的证书的信息。根据Java控制面板中的安全设置,某些应用程序可能被阻止运行。
教程已更新以反映所有RIA都应从签名的JAR文件运行的建议。在部署 教程的用户接受RIA 上添加了一个新页面。您还可以参考有关签署和验证JAR文件 的课程。最后,教程中从Java Web Start启动的所有示例都已签名,并且所有小程序都在沙箱中运行。
作为Java SE 8的持续进行的项目Lambda工作的一部分,有关方法引用 的新页面,并包括新的MethodReferencesTest.java 示例。
Java SE 8即将引入的另一个功能是能够调用使用分叉/合并框架对数组进行并行排序的方法。 Arrays 和Fork/Join 页面已更新,包含有关操作数组的信息。
2013年3月1日 -
Java教程的这个在线版本包含了JDK 8发布中几个即将推出的功能的早期访问信息:
2012年6月14日 -
此版本包括对泛型 教程的完全改版。新教程提供了更全面的有关使用泛型进行编程的信息,包括通配符使用指南 、泛型限制 和通配符捕获和辅助方法 。
此版本还新增了一个关于自动装箱和拆箱 的页面。
2012年3月2日 -
这次更新标志着Java教程以两种电子书格式发布:
适用于Kindle的mobi 电子书文件。我们建议在Kindle Fire或Kindle DX上查看以获得最佳效果。
适用于iPad、Nook和其他支持ePub 格式的电子阅读器的ePub 电子书文件。
每本电子书包含一个单独的学习路径。您可以通过在Java教程 首页上的“以书籍形式”框中的链接下载学习路径。在查看预格式化代码块时,为了获得最佳效果,请调整设备的横向/纵向方向和字体大小,以获得最大可能的视图区域。
我们很高兴地宣布,准备Java程序员语言认证 课程已经完全重做。列出了每个Java SE 7认证考试的目标,并提供了相关教程页面的链接。
网络资源的国际化 课程已更新。
2011年12月12日 -
这次更新与JDK 7更新2的发布同时进行。此版本包含以下更新。
有关7u2版本的详细信息,请参阅JDK 7更新2发行说明 。
2011年7月20日 -
这次更新与JDK 7的发布同时进行。大部分JDK 7的功能已经添加到教程中。此版本包含新的部署页面,无代码库部署 。
以下是为JDK 7版本添加的摘要:
项目Coin的更新影响了Java语言和Essential Classes教程中的几个部分。详细列表请参见2011年2月21日的更新。
Essential Classes教程中的File I/O部分已更新以适应新的文件I/O API。
Swing教程中添加了几个部分,包括JLayer组件、Nimbus外观和关于半透明和有形状窗口的信息。
Deployment教程有很多更新和新的课程,包括以下内容:Deploying Without Codebase、Embedding JNLP File in Applet Tag、Handling Initialization Status With Event Handlers和Customizing the Loading Experience。
在Concurrency教程中添加了Fork/Join部分。
Internationalization教程已更新以反映Unicode 6.0的更新。受影响的部分请参见2011年2月21日的更新。
JDBC教程中的JDBC Basics部分已完全重新制作和更新。
Java API for XML Processing (JAXP) 1.4技术的教程已纳入Java教程。
你可以在Java SE 7 Features and Enhancements 中找到关于JDK 7发布的详细信息。
2011年3月17日 -
此次更新包括:
Java SE 7中引入的JLayer组件在如何使用JLayer装饰组件 中有详细解释。如果你只有四分钟,可以观看一个介绍JLayer的短视频 。
JDK 7构建130版本之后,NIO.2文件I/O包已更新,API也变得更简单。文件I/O(使用NIO.2)部分已修改以反映这些变化。
已添加了演示如何使用RowSet对象的示例到JDBC教程中。请参见使用RowSet对象 获取更多信息。此外,还添加了一个演示如何将JDBC与GUI API(特别是Swing API)集成的示例。请参见使用JDBC与GUI API 获取更多信息。
2011年2月21日 - JDK 7 开发者预览版发布
此更新包含以下内容:
Unicode 标准 的最新版本是 Unicode 6.0 。Java 教程中对 Unicode 的内容有了新的覆盖范围:
由于 Project Coin ,Java 语言引入了一些变化:
已更新 原始数据类型 页面,讨论了二进制字面量,并提到下划线字符可以出现在数字字面量的任何位置。
已更新 switch 语句 页面,反映了可以在 String
对象上进行 switch 操作的能力。
泛型中添加了钻石操作符。有关更多信息,请参阅类型推断部分。
使用非具体化参数与可变参数方法也是新的。有关更多信息,请参阅使用非具体化参数与可变参数方法。
添加了一次性捕获多种类型的异常的能力。有关更多信息,请参阅 catch
块 。
try
-with-resources 语句确保在程序使用完资源(如 BufferedReader
)后关闭该资源。有关更多信息,请参阅 try
-with-resources 语句 。
2010年10月18日 -
此更新包含以下内容:
几个月来,Java SE 教程无法作为下载提供。我们很高兴地报告,这个非常受欢迎的教程合集已经回来了,可以通过右侧的 "教程资源" 盒子下的链接从 首页 下载。
Java 教程对你来说是否显得过于庞大?我们新增了一个新的 学习路径 页面。
新的 Fork/Join 页面是并发专题中的一部分,描述了如何利用 Fork/Join 框架来充分利用多个处理器。此功能现在在可在 java.net 上获得的 Java SE 7 版本中可用。
JDBC 基础 课程已完全重制,包括可以下载、编译和运行的更新的示例代码 - 该代码已配置为适用于 Java DB 和 MySQL。有关更多信息,请参阅 入门指南 。
最后,一个小但值得注意的变化是,独立的 JNDI 教程,之前可在 java.sun.com 上获得,现已移至 docs.oracle.com 上的 Java SE 文档存档中,并修复了教程中的许多损坏链接。相应地修改了 JNDI 教程首页 ,并进行了重定向以确保无缝过渡。
2010年7月7日 -
此教程更新表示在其新主页docs.oracle.com
下的第一个版本发布。重定向已经完成,所以任何试图访问java.sun.com/docs/books/tutorial
上的教程都会被重定向到新位置。我们希望这对于我们众多的教程读者来说是一个无缝的过渡,但如果您遇到任何问题,请告诉我们。
此版本还包括以下内容:
2010年1月12日 -
此更新包括:
开发可拖动Applet - 描述如何创建一个可以在浏览器外部拖动并动态转换为Java Web Start应用程序的Applet。
向其他Applet发送消息 已被重写。
以前,一些作为NetBeans项目分发的Swing示例 缺少一个标签,阻止它们在NetBeans 6.5或更高版本中打开。现在已将缺少的标签添加到所有project.xml
文件中。
修复了各种小错误、拼写错误和错误的链接。
2009年9月23日 -
此更新包括:
一个关于开发和部署丰富Internet应用程序的广泛主题的部署教程。部署教程包含以下课程:
Swing外观和感觉课程中展示如何使用新的Nimbus 外观和感觉的新部分。
一个新的Swing页面描述如何创建半透明和形状窗口 。
一个新的接口和继承页面讨论多态性 。
像往常一样,我们修复了许多错误、拼写错误和错误的链接。
2009年5月27日 -
此更新包括:
完全重新制作的文件I/O 教程,引入了NIO.2功能。此功能是JDK 7的一部分。
一个新的用于收集有关教程的反馈的工具。在每个内容页面的底部,您可以留下一个公开可见的评论。使用JS-Kit机制留下评论类似于留下博客评论。告诉我们您的想法!
一个新的专门讲解Sockets Direct Protocol 的教程,这也是JDK7中的新功能。
修复了拼写错误和错误的链接。
2008年3月14日 -
此更新包含以下内容:
完全重写并更新为JDK 6的拖放 教程。
更新版权页面。
新增许可证页面,允许用户对教程内容进行有限的非商业用途修改。
我们将下载转移到Sun下载中心。下载Java教程前需要接受许可协议。
我们不再使用版本名称,而是使用日期。
除了上述工作外,还修复了许多破损链接、错别字和其他错误。
史前辣椒日,2007年8月1日 -
这次更新完成了JDK 6的教程更新,除了标记为JDK 6的Swing拖放教程。更新的页面很多,但更值得注意的变化有:
*好吧,我们编的,或者更准确地说是Collin编的。 :-)
全国诚实日,2007年4月30日 -
这次更新主要关注Swing教程 - 我们已经将Swing教程中的80%内容更新至JDK 6版本。
这次更新的一个重要部分是我们的示例比以往更易于使用!现在,Swing示例已经准备好在NetBeans IDE中使用。在任何Swing教程的示例索引 中(此链接将带您到组件教程,每个Swing教程都有一个单独的索引),您可以下载任何演示的zip文件。或者您可以访问在NetBeans IDE中运行教程示例 页面获取有关如何在NetBeans中使用示例的更多信息。访问NetBeans IDE下载页面获取NetBeans IDE 5.5版本(免费)。
我们全新和重大更新的部分包括:
区号日,2006年11月10日 -
快来看看新的Java教程博客 !
Java™教程(第4版) 现在已经可以印刷出版。这个教程的更新版本包括第一版的勘误 页面。我们的出版商Addison Wesley告诉我们,这本书的几种翻译已经在进行中。
在这个更新中,除了反射之外,所有的专业路径都已经更新到了6.0版本。新更新的部分包括:
此外,将更新到6.0版本的Swing专业路径正在进行中,其中包括以下部分:
此外,在教程的大多数页面底部都有一个新的编译和运行示例FAQ 。
国家西瓜日,2006年8月3日 -
核心教程现已更新到JDK 6版本。这是为了准备一本新的印刷版Java™教程(第4版) ,您可以在Amazon 或许多其他书店预订。此在线更新包括以下部分:
您可能注意到教程的一些非常古老的部分已经被移除。以前版本的教程现在可以通过下载获取。请参阅下载页面。
最后,教程本身也进行了改版,拥有全新的外观和感觉。请告诉我们您对这些改变的看法,并请告诉我们如果您发现任何问题。通过我们的反馈表单发送反馈。
坚果饼干发布,2005年12月23日 -
Java教程更新到JDK 5.0版本。这包括教程的以下部分:
一些非常古老且过时的部分已经被归档,并可以通过下载获取。请参阅下载页面获取完整的可用捆绑列表。
您会注意到旧的applet和JAR部分已经更新并移动到新的部署教程中。如果您有对旧页面的绝对链接,可能会出现重定向。
我们修复了搜索功能的问题:它没有将搜索限制在教程范围内。现在已经修复正常工作。
教程中删除了1.0和1.1的示例。发布5的示例位于"ex5"目录中。
我们有一个新的反馈表单。它外观不同,但您的反馈将发送到同一个位置。尽管我们的工作量使我们无法回复每封电子邮件,但请放心我们会阅读它们。
最后,我们修复了常见的错误链接、拼写错误和其他勘误。
多萝西生日发布,2005年4月15日 -
以下部分已更新到5.0版本:
以下部分在我们上次发布中更新到了5.0版本,但后来又根据读者或评论者的反馈进行了更新:
根据读者要求,我们将每个窗口顶部的反馈表单链接更改为在新窗口中打开,这样您就不会丢失正在反馈的页面。
我们开始添加ZIP文件,这样您就可以轻松下载特定章节的所有示例。
我们在两个Swing课程中的示例(包括Web Start链接)中添加了5.0版本:Swing入门和通过示例学习Swing。
我们将一些小程序移到了引用它们的页面上。请告诉我们您对此的看法。对于那些与其页面真正集成在一起的小程序的另一种选择是将它们作为Web启动应用程序。
我们进行了许多小的更改 - 您可能不会注意到 - 以清理我们的HTML,必要时减少代码示例行长度,并通常从HTML文件生成更好的图书文件。
最后,我们修复了常见的损坏链接、拼写错误和其他勘误。
Anya's Birthday发布,2005年2月14日 -
以下部分已更新到5.0(尽管大多数仍在等待工程审查):
在尚未更新内容的章节中,我们已更新了一些图像。在某些情况下,这可能导致文本(或代码)与图像不匹配。
我们修改了页面标题和版权声明。这将导致每个页面都被更新,即使内容尚未更改。
我们修复了搜索页面。感谢那些向我们报告它损坏的人。
最后,我们修复了常见的损坏链接、拼写错误和其他勘误。
Swing书籍发布第二版,2004年3月11日 -
为我们刚出版的书籍《JFC Swing教程,第二版》添加了一个信息页面。它包括指向描述书籍和光盘内容以及勘误的其他页面的指针。
在Swing路径中添加了问题和练习以及答案。这反映了新书中非参考章节末尾的问题和练习部分。
将表格排序 示例更新为使用更新、功能更强大、更稳定的TableSorter
版本。
通常的其他修复。
Swing书籍发布,2004年2月20日-
玛雅的生日发布,2003年11月3日-
除了前两个课程外,Swing教程 现在已经更新到1.4版本(附有关于1.5版本的注意事项),并反映了即将出版的书籍的内容。我们将在这里注明最大的变化,但由于变化太多,无法一一列举。
在与Swing工程师协商后,我们更改了线程安全建议,并将几乎所有的1.4 Swing示例更新为线程安全。最新的建议是:在事件分派线程上构建GUI。 详见“如何使用线程”。
将Swing 布局 和事件 课程中的所有页面更新到1.4版本。
将使用其他Swing功能 课程中的辅助功能、动作、线程和计时器页面更新到1.4版本。
在使用Swing组件 课程中,将小程序、根面板、微调器、分隔面板、选项卡面板、表格、工具栏、工具提示、树和所有文本组件页面更新到1.4版本。创建了分隔符和格式化文本字段的页面。
完全重写了绘制 课程。不再仅仅介绍Graphics
类中的API,而是告诉您绘制Swing组件的特殊之处,并将详细信息指向2D教程。
在整个教程中,修复了常见的错误链接、拼写错误和其他勘误。
维多利亚日(加拿大),2003年5月19日-
为教程的Swing部分添加了两个全新且备受请求的页面:如何使用数据传输(涵盖拖放和剪切/复制/粘贴)和如何使用焦点子系统 。非常感谢Shannon Hickey和Scott Violet对这些相当长且技术复杂的部分进行的审查。
大幅改变了如何使用SpringLayout 的文本和示例。尽管仍未完成,但现在应该更有用。许多示例 使用了一个名为SpringUtilities
的类,该类使得构建单元格网格变得容易,包括标签-文本字段对的列。
将以下Swing组件参考页面更新为1.4版本:列表 、面板 、进度条 、菜单 、滚动窗格 和滑块 。在格式化文本字段 部分添加了一个示例列表。
将其他几个Swing参考页面更新为1.4版本:边框、图标。
将教程中的applet标签更新为使用APPLET
而不是OBJECT
/EMBED
。这样可以使它们在最新版本的Java插件中成功执行。将一些applet更改为使用getResourceAsStream
而不是getResource
来加载它们的图像;这对于使用Java插件的applet来说更加高效。
在Swing示例中,对作为内容面板使用的JPanel
调用了setOpaque(true)
,以考虑到我们发布的每个外观和感觉中,面板默认不再是不透明的事实。(在1.4.2中添加了GTK+,它具有透明面板。)在可能的情况下,将使用p = new JPanel(); p.setLayout(l)
的示例更改为使用p = new JPanel(l)
,以避免不必要地创建FlowLayout
对象。
重写和重新组织了Swing组件 教程的前半部分。这包括添加了两个新页面,其中包含一些新材料和从其他页面提取出来的一些内容:在Swing组件中使用HTML和使用模型 。
修复了一些破损链接、拼写错误等。
黑羊年(中国),2003年2月3日-
重新组织和更新了设置外观的内容。甚至包括了GTK和Windows XP外观的信息,这将在1.4.2中引入。
添加了1.4事件演示的源代码。我们在上次更新后不久就发布了可运行的演示,但没有源代码。
更新了组件教程中的以下页面,以反映1.4的变化(并进行其他改进):JComponent 、按钮 、组合框 、颜色选择器 和框架 。
在组件教程中更新/添加了示例。新增演示:FrameDemo2。为FileChooserDemo2添加了PNG支持。修改了ListDemo,如果已存在该人员,则不添加。在DialogDemo中添加了一个文本输入对话框。
修复了创建类答案页 ,以确实包含答案。
更新了标准页眉和页脚,以便残障人士更易使用。这些更改对其他读者来说是不可见的。
修复了破损链接、拼写错误等问题。
洋葱市场日(瑞士),2002年11月25日 -
我们将外部链接更改为在新的空白窗口中打开,而不是命名窗口。虽然这可能导致窗口过多,但可以解决人们丢失命名窗口的问题。
在Swing教程的两个部分“使用Swing组件”和“使用其他Swing功能”中添加了许多1.4示例。这些示例可以使用Java™ Web Start启动,并且源文件现在列出了它们所需的其他文件。整体的Swing示例索引现在指向每个教程的所有版本的示例。
在“使用其他Swing功能”教程中添加了一个关于按键绑定 的页面。我们还更新了动作 和可访问性 页面。
在“Swing组件”教程中,我们改变了页面的顺序,并更新了所有页面,包括按钮。
我们仍在更新“使用JFC/Swing创建GUI”教程,以适应1.4版本。您可能会注意到一些更改或关于我们计划进行的更改的说明。
我们添加了一个Java Web Start页面,以帮助人们安装和使用该软件。
修复了破损链接和拼写错误。
鲁滨逊·克鲁索的生日,2002年9月30日 -
我们添加了一个新的课程! 正则表达式 介绍了Java™ 2平台标准版1.4版本中引入的java.util.regex
API。正则表达式可以用作搜索、编辑或操作文本或数据的工具。该包使用类似于Perl的语法,但我们的课程并不假设您之前有正则表达式的经验。
教程的首页完全改变了 ,java.sun.com的页面现在与下载的页面看起来不同。两个页面的内容基本相同。
我们在教程首页 添加了一个搜索框 。
我们取消了Servlets 教程,因为它已经过时,其他教程已经更新了servlet的内容。有关更新覆盖范围的链接和旧教程的可下载形式,请参阅旧的教程入口。
我们添加了一个关于打印技巧 的页面:Improving Printing Performance。它包括从1.3和1.4.1开始使用的策略。
我们添加了一个描述我们代码示例许可证的文件 。除非另有许可,我们所有的代码都在此许可证下可用。
特此通知:我们计划取消Trail地图 。
我们正在更新使用JFC/Swing创建GUI 教程至1.4版本。您可能会注意到一些变化或我们计划进行的变更的注释。
修复了很多损坏链接和拼写错误。
泰国慈悲节,2002年3月4日 -
世界地下日,2001年12月19日 - 维护版本
我们从网站上删除了调查。感谢大家的深思熟虑的回答。您的反馈将帮助我们改进教程并为未来做计划。
修复了很多损坏链接和拼写错误,包括使用JFC/Swing创建GUI 教程的更新。
泰国朱拉隆功大学纪念日,2001年10月23日 -
新的调查!请花几分钟填写我们的调查。您的反馈将帮助我们改进教程并为未来做计划。我们还包含了一些本地化问题,以帮助我们了解您希望我们提供哪些语言的翻译。
修复了很多损坏链接和拼写错误。
黄金周(日本),5月1日至今
新课程!用户界面Swing:快速入门指南。这是一个使用Swing组件构建用户界面的快速入门指南。它围绕几个逐渐复杂的示例构建。(该课程最初是我们最新书籍《Java教程第三版》的一章。)
另一个新课程!针对编写游戏或其他图形密集型应用程序的程序员,请查看新的全屏独占模式API课程。该API将包含在Java 2标准版1.4版本中。
修复了一些损坏的链接和拼写错误。
格拉里乌斯节(瑞士),4月1日至今
完全更新了I/O:读写(但不包括' rithmetic)课程。
重新组织了Essential路径中的课程顺序。
修复了一些损坏的链接和拼写错误。
小更新,2月28日至今
滚动停电发布,2月3日至今
为新书《Java教程第三版》中包含的所有路径添加了问题和练习。
添加了支持新书《Java教程第三版》的新书页。(目录包含一套链接,指向问题和练习的所有答案。)
更新了入门路径。我们更新了1.3版本的材料,并添加了问题和练习。
更新了接口和包的课程。我们更新了1.3版本的材料,并添加了问题和练习。
修复了一些损坏的链接和拼写错误。
爱德华·蒙克的生日,12月12日至今
更新了学习Java语言路径。我们更新了1.3版本的材料,并在语言基础部分添加了问题和练习。
更新了servlet路径,以引用Tomcat 3.x和4.0的实现。这些版本支持Java Servlet技术的2.2和2.3版本。
现在可以将Servlets书店示例的Tomcat版本作为zip文件下载。
修复了一些损坏的链接和拼写错误。
黑色星期五,10月13日至今
在IDL路径上添加了关于idlj编译器的信息,该编译器是1.3版本的一部分。更新了指向idlj编译器、其文档和OMG网站的链接。
更新了servlet路径,以引用Java Servlet 2.2 API文档。
更新了Bingo示例,修复了一些线程安全问题。
在大多数基本路径中更新了API链接,指向1.3版本(而不是1.2)。
修复了一些损坏的链接和拼写错误。
教程五周年纪念日,2000年5月31日-
添加了Werner van Mook的Mac适配版本的编写和编译第一个程序的指南:第一杯Java(Mac OS)。
在入门 教程的结尾和学习Java语言 教程的前三课中添加了问题和练习。
重写了学习Java语言教程的前几课的部分内容。
修复了一些链接错误和拼写错误。
Zeppo Marx的生日(1901年),2000年2月25日-
对学习Java语言教程进行了重建工作。增加了很多新的例子。进行了整理。
修复了SwingWorker源代码中的一个微妙的bug。请参见Swing教程中的如何使用线程。
调整了JTable页面,例子以反映1.3版本。请参见Swing教程中的如何使用表格。
修复了一些链接错误和拼写错误。
感恩节(美国),1999年11月24日-
在JavaBeans™教程中添加了一个新的课程,使用BeanContext API,涵盖了可扩展的运行时容器和服务协议。
在Swing教程中添加了有关1.3版本中的JTable的一些信息。还添加了一个新的1.3版本的JTable示例。
开始更新和重写学习Java语言教程。这项工作包括在每个部分添加练习和问题。
添加了从java.sun.com网站获取的术语表 并开始将术语链接到该表中。
部分转换为我们新的图标方案,用于标识链接的目标。
查找术语表中的术语
链接到一个.java
文件
链接到java.sun.com上托管的javadocs页面
链接到教程之外的页面
链接到教程中不同课程的页面
教程内部链接(黑色)在当前浏览器窗口中更新页面,而教程外链接(彩色链接)会打开一个新的浏览器窗口。
素食日(全球),1999年10月1日-
移除了调查。感谢您的回复。
添加了一个非常大的索引 ,按顺序列出了教程中的每个内容页面。
添加了一个资源页面,列出了教程之外的Java编程资源。
添加了你的第一杯Java(适用于UNIX) 。
添加了反馈表单。请使用这个表单与我们联系,而不是直接发送邮件。这将帮助将您的邮件发送给正确的人。
修改了我们的工具,提供自动的下一个和上一个链接,自动的页面标题,以及自动的页面头部和页脚。除了这些页面元素应该包含更少的错误和不一致之外,这个改变对读者来说应该是不明显的。
创建了一个自动生成级别目录的工具。除了这些页面应该包含更少的错误和不一致之外,这个改变对读者来说应该是不明显的。
修复了各种损坏的链接,印刷错误和其他错误。
将所有图像放在Swing组件可视索引上。
更新了API链接指向Java 2 SDK文档。
感谢我们的两位夏季实习生Ray和Indra,我们能够进行了很多清理工作,包括修复遗漏,澄清,添加示例等等。
我们检查并清理了大部分待处理问题。仅剩下的待处理问题在BINGO课程中尚未完成,并且在第二版的一本书页面中。我们希望但不能保证在下一次教程更新中解决剩余问题。
国家微笑周:),1999年8月3日 -
将2D applets添加到applets页面的列表中,总共有77个教程中的applets。此外,提供了用于运行2D applets的Java Plug-in标签。
添加了在Windows中编译和运行Java程序的详细说明 。
发布了一项调查。
创建了一个教程公告邮件列表,教程读者可以订阅。
为一些没有常见问题页面的教程添加了常见问题页面。
澄清和修复读者报告的各种错误。
Fiesta de San Fermin(西班牙),1999年7月7日 -
修复了Swing教程中的大部分待处理问题。修复了其他教程中的一些待处理问题。
修复了安全教程中一个示例的一些问题。
对页面格式进行了一些小的修改,并对我们的工具进行了一些清理。这对API链接有一些小的影响。
清理了图像目录并删除了未使用的图像。这将教程的大小减少了约1.5兆字节。
在servlets教程中添加了JSDK 2.1的覆盖。
修改了Java语言教程和相关示例中有关终结的覆盖。
修正了读者报告的错别字,损坏的链接,一些损坏的applets和其他问题。
更新了运行BINGO程序的说明。
成为WinHelp版本教程的镜像。
美国阵亡将士纪念日,99年5月28日 -
宣布了 Swing 书籍。
由于读者反馈过于强烈,我们再次更改了格式。我们去掉了左边的边框,并修改了标题和页脚,增加了指向搜索页面的链接。
根据读者的电子邮件,修正了《学习Java》、《基本类》和《自定义网络》教程中的拼写错误和其他错误。
莱伊日(夏威夷)更新,99年5月5日 -
根据读者的反馈,我们对新的页面格式进行了一些更改。
由于读者的反馈,我们在每个页面底部增加了导航区域。
为了防止大图像创建过宽的页面,我们对图像实施了最大宽度460的限制。
莱伊日(夏威夷),99年5月1日 -
修改了我们的页面格式。现在每个内容页面都包含搜索功能。
为 Swing 教程中的所有示例创建了索引。如果读者喜欢,我们计划为所有教程都这样做。
审核了 Swing 教程中所有示例程序的代码。
做最后一次准备工作,准备从HTML转换为书籍格式。这包括从修正拼写错误到调整源文件中的注释,再到添加几段新信息等。
添加了第二个自定义布局管理器示例:GraphPaperLayout。
为2D教程添加了新的示例和内容。
世界文化日,99年3月12日 -
我们沿着 Swing 教程进行了复审准备工作。以下是我们所做的事情:
内部审核和编辑了 Swing 教程中前7个课程的所有.html页面。在某些情况下,这相当于进行了重大重写。
在组件的"如何"页面中添加了大量涵盖之前遗漏的组件方面的材料。通常,额外的材料涵盖了更高级的组件功能。
审核示例代码,运行了所有示例,并根据需要进行修改。
研究和解决了许多未决问题。(仍有一些未解决。)
执行了"示例审核"并更新了示例表格。
审核并更新了各处的API表格。
修正了读者报告的各种错误和清晰度问题。
填补了"粘合"页面。
在许多地方添加了关于常见问题的信息。
通过添加链接更好地将各个部分联系起来。
通过添加API和示例表格,使布局和事件部分类似于"如何"页面。
乔的40岁生日,99年1月21日 -
将绘图课程更新为 Swing。
对 Swing 教程进行了各种改进。
一些首页的清理工作。
冬至,98年12月21日
添加了搜索功能 !
添加了转换为 Swing 的初步草稿。
为拖放功能添加了资源和示例链接。
进行了一些图像清理,将教程缩小了约0.75兆字节。
对 Swing 教程进行了各种改进。
修复了各种错误链接和拼写错误。
佛陀的启示(日本),98年12月8日
修复了小错误和链接问题。
为Swing教程的前两课准备了副本编辑。
从教程中删除了除了运行小程序所必需的.class文件,使教程缩小了1.5兆字节。
工匠日(墨西哥),98年12月4日
注意 :CD-ROM版本。这是在CD-ROM上出现的Java教程《续篇》 的版本。
将《续篇》中的所有副本编辑和其他更改整合到5个教程中:概述、国际化、声音、2D和RMI。
对Swing教程进行了许多小改进,特别是在swingOverview和swingStart中改进了材料的组织方式。
更新了程序,使用Swing 1.1(从Swing 1.0.3和Swing 1.1 Beta 3)和JDK 1.2。
Aron的生日,98年11月6日-
大幅重新组织了使用JFC/Swing创建GUI 教程。基于Swing的用户界面教程取代了旧的基于AWT的用户界面教程,该教程只能通过下载获得。我们还有一些工作要做,以完成过渡。在建设期间请谅解!
修复了拼写错误、链接错误和程序错误。
世界儿童日,98年10月5日-
将在容器中布局组件 的示例和文本转换为使用Swing。
对使用Swing组件 的课程进行了几次更新。
将许多小程序转换为使用Java插件。
更新为JDK 1.1.7和Swing 1.1 Beta 3。
将旧的用户界面教程转换为可下载的存档。
删除了参考对象教程。
修复了拼写错误、链接错误和程序错误。
劳动节发布,98年9月7日-
添加了JDK概述 。
添加了Java声音 教程。
添加了使用Java 2D图形 教程。
添加了JDBC数据库访问 教程。
添加了使用Java RMI 教程。
审查和编辑了使用Java IDL进行编程 教程。
为使用Swing组件 的课程添加了新的材料和示例。
Laine的生日发布,更新版,98年8月14日-
添加了使用Java IDL进行编程 教程。
添加了JDK 1.2中的安全性 教程。
审查和编辑了各种教程和课程。
为使用Swing组件 的课程添加了新的材料和示例。
修复了拼写错误和链接错误。在各个地方进行了小的改进。
Laine的生日发布,98年8月3日-
添加了集合 教程。
添加了Servlets 教程。
添加了Java扩展机制 教程。
添加了参考对象教程。
为使用Swing组件 的课程添加了新的材料和示例。完成了许多页面的技术审查,并集成了工程反馈。
审查和编辑了javabeans 和jar 教程。
修复了拼写错误和链接错误。在各个地方进行了小的改进。
夏至发布,98年6月26日 -
在使用Swing组件 课程中添加了许多新的材料和示例。
更新了关于hashCode
和equals
的信息。
添加了一个包含我们贡献作者信息的bios 页面。
审查并编辑了国际化 、反射 和本地 相关内容。
修复了各种拼写错误和损坏的链接。改进了一些文本和示例。
英国的蕁麻日,98年5月29日 -
添加了JAR 相关内容。
在国际化相关内容中添加了4个新主题:字符串比较 、文本边界 、转换 以及国际化现有程序的检查清单 。
为日期和数字格式化课程添加了演示程序。
重新组织了JavaBeans 相关内容。
在使用Swing组件 课程中添加了许多新的材料和示例。
审查了本地方法 相关内容,并进行了相关的更改和修复。
修复了各种拼写错误和损坏的链接。改进了一些文本和示例。
植树日,98年4月24日
哇哦!新的首页 !新的Trail地图 !
为Trail级别的TOC.html文件提供了新的外观。同时,删除了课程级别的TOC.html文件。现在我们在Trail级别的TOC.html文件中提供了一个链接到适当位置的链接。
继续向使用Swing组件 课程添加新的页面。
在国际化相关内容中添加了一个新的课程,涵盖格式化 。
添加了反射 相关内容。
为Mac程序员在本地方法 相关内容中添加了一些信息。
修复了拼写错误、损坏的链接和其他一些次要问题。
删除了旧的国际化相关内容。
删除了旧的本地方法相关内容...提供了一个可下载的存档 。
更新了关于书籍第二版的勘误页面 。
春分,98年3月20日
将背景颜色更改为白色。
完成了从新的第二版书中整合的图表。现在,图表和图片都保存在顶层,而不是分散在课程目录中。
为书籍第二版添加了book.html 和相关页面。将第一版的book.html 和相关页面的页面设计更改为与第二版相匹配。
在我们的工具和流程中进行了一系列工作。这是我们在新工作空间中使用新的makefile和构建过程更新教程的第一次更新。
由于我们可爱的新工具,我们现在可以轻松地提供书中所有示例的可下载存档。请参阅ftp
链接的下载教程 。
修复了各种拼写错误和其他次要问题。
更新了与JDK 1.2相关的Swing 材料。
Saturnalia, 22 December 97 - 期待已久的更新!
这是教程的一个重大 更新。几乎每个文件都有所改动。
这个在线教程的发布与Java教程 第二版书籍的发布相对应,也是附带该书的CD-ROM上出现的在线教程版本。
修改正在进行中,但在很大程度上,我们已经将1.1版本的信息整合到现有的教程、课程和示例中。这与之前版本的教程中散布的1.1说明形成了鲜明对比,而且必须承认,之前版本的教程有些令人困惑。
此外,我们正在将对书籍版本进行的编辑和其他更改整合到在线版本中。在在线教程的某些区域,这一过程已经彻底完成,在其他区域则不够完善。在接下来的几个月中,我们将继续进行这个过程。
这个教程中首次在第二版Java教程 书中出现的新课程:
添加了一个名为全面整合 的课程,提供一个大型的、真实世界的客户端/服务器示例并进行分析。
由Andy Quinn提供全新的JavaBeans教程 !
8 July 97 -
教程的目标之一是在JavaSoft发布的最新版本中记录最新和最棒的内容 。为此,我们添加了一课程关于使用Swing组件 。Swing发布是JFC的早期版本。这些信息只能从Java教程中获得。
添加了一条名为Java安全1.1 的课程,涵盖了新的1.1安全API。
通过Greg Voss更新了JavaBeans™教程 。
将编写全球化程序 提升为课程。这个课程仍在进行中,但它包含了一些来自Taligent 的出色演示等新材料。
在我们的升级到1.1及更高版本! 课程中添加了有关1.1版本的信息。
修复了损坏的链接、拼写错误和其他勘误。
14 May 97 -
我们在现有章节中改进并添加了更多的1.1版本信息。我们在处理事件 中添加了更多关于各种类型事件监听器的示例和信息。我们还修复了在编写全球化程序 中使用的AroundTheWorld小程序。
28 April 97 -
我们添加了一个名为升级到1.1及更高版本! 的新课程,该课程是在1.0之后添加到JDK的功能的总部。此外,《学习Java语言》和《基本Java类》课程现在具有指出受到1.1影响的材料的注释。最后,我们重新组织了我们的顶层文件,使它们更易访问。
3 March 97 -
新增了一个全新的教程,介绍了JavaBeans!这个名为JavaBeans教程的教程,由Greg Voss编写,向您展示了使用JavaBeans技术开发程序的方方面面。
19 February 97 -
我们的“客座作者”计划在这个版本的教程中首次亮相,其中包括了Beth Stearns编写的有关编写本地方法的全新教程。快来看看吧:使用Java本地接口(JNI) 。
将书中的编辑更改合并到在线版本的两个教程中:入门 和编写小程序 。
更新了编写全局程序 ,使其与FCS JDK 1.1版本兼容。
通常的各种修复。
24 December 96 -
各种修复。此外,添加了一个描述JDK新特性的新课程:编写全局程序 。
6 June 96 -
发布了第六个草稿。该草稿是书籍版本的基础版本。书籍和在线版本并不完全相同 - 例如,编辑人员的更改尚未应用于在线教程。此外,在线教程的图示还未更新为与书籍相同。自第五个草稿以来的一些重要内容变化包括:
完成了常见问题页面。
添加了有关Macintosh JDK的信息。
在入门教程中添加了小程序结构的部分。
改进了小程序通信课程中的聊天服务器示例。
28 Mar 96 -
发布了第五个草稿。此草稿中的许多页面已被重写或扩展。(如果您发送了评论但在此草稿中未看到反映,请不要感到冒犯 - 我们尚未完成整合审稿人的评论。)一些重要更改包括:
修订了应用程序结构课程并将其移到入门教程中:Java应用程序的结构 。我们计划为小程序编写一个相当的章节。
对Java教程中的以下课程进行了大幅改写:Java语言的基础知识 和Java中的对象和类 。
在小程序概述中添加了新页面:将小程序添加到HTML页面和摘要 。
加强了小程序线程页面:小程序中的线程 。
在UI教程中添加了对对等体的讨论:组件架构的细节 。
在本地方法教程将本地方法集成到Java程序中 中添加了关于传递数据进入和从本地方法中访问Java对象的内容。
删除了一些教程:与C/C++的比较,故障排除和工具。这些信息已经(或将被)合并到其他教程/课程中。
4 Mar 96 -
发布了第四个草稿。除了修复常见的错误、拼写错误和链接错误外,这个草稿还对我们的旧教程进行了修改,并添加了以下新内容:
在将本地方法集成到Java程序中 教程中添加了一节新课。
在编写Applet 教程中新增了4节课,其中包括:创建Applet用户界面 、与其他程序通信 、了解Applet的能力和限制 和完成一个Applet 。(前三节已重新组织为利用Applet API 和编写Applet的实际考虑 两个教程)。
24 Feb 96 -
发布了第三个草稿。除了修复常见的错误、拼写错误和链接错误外,这个草稿还对我们的旧教程进行了修改,并添加了以下新内容:
在创建Applet用户界面 教程中添加了许多新内容。
在创建用户界面 教程中新增了几节课,包括:
在容器内布置组件 请注意,3页内容仍在建设中。
使用组件,构建GUI 现在每个组件都有一篇描述如何使用它的页面。
使用图形 现在提供了有关如何绘制原始图形(包括文本)和图像的信息,以及有关执行动画的信息。动画页面包括有关如何消除闪烁、使用update()和双缓冲的信息。它们还包括使用MediaTracker的信息。
新增了一个教程:自定义网络
在基本的Java类 教程中新增了一节新课:输入和输出流
23 Jan 96 -
更新了第二个草稿
更新链接,指向新的FCS1.0 JDK版本。
修复了一些Applet和源文件丢失的错误。
修复了一些拼写错误、错误和链接错误。
18 Jan 96 -
更新了第二个草稿
根据Beta2引入的事件更改,修改了创建用户界面 教程。特别是,键盘事件处理程序现在必须返回false,除非它们希望事件被丢弃。这影响了转换示例程序和概述。
调整了教程的结构,以反映我们在打印版本截止日期之前能完成的内容。
添加了一个非常初步的Java对象特性教程 - Java对象
修复了各种拼写错误、错误和链接错误。
12 Dec 95 -
更新了第二个草稿
进行了少量更改,以反映Beta2而不是Beta。
修正了各种拼写错误、错误链接和错误链接。
在基本Java类 路径中添加了一个新的课程,使用异常处理错误 。
1995年11月13日 -
更新了第二个草稿
进行了少量更改,以反映Beta而不是预Beta。
将这个文档的名称从"Java程序员指南"更改为"Java语言教程:面向互联网的面向对象编程"。为什么名称这么长?因为这个文档将被出版为一本书,我们希望标题尽可能描述性,而不需要太多潜在买家的先前知识。
为我们的链接图形添加了ALT文本,以便使用非图形浏览器的人可以理解图形传达的信息。
在创建用户界面 路径中添加了一个新的课程,在容器中布局组件 。
1995年10月2日 -
发布了第二个草稿
更新了所有内容以反映新的API(除了入门 路径中的"run:"协议处理程序 和"text/plain"内容处理程序 )。
我们修复了许多拼写错误,澄清了许多混淆,修复了错误链接和沟通问题。
我们进行了一次面部提升,拥有了新的图标和新的页面设计。
并且,我们添加了以下路径和课程:
编写小程序 路径有一个新的课程:小程序概述 ,介绍了小程序的工作原理以及如何使用Applet类创建小程序。
新的创建用户界面 路径有两个新的课程:用户界面元素概述 ,介绍了Java开发环境提供的用于构建用户界面的对象,以及在容器中布局组件 ,告诉您如何使用AWT提供的每个组件。
我们还添加了将本地方法集成到Java程序中 的路径,向您展示如何将本地方法集成到Java程序中。
最后,我们添加了两个新的课程:控制线程 和面向对象编程概念 。
1995年5月18日 -
发布了第一个草稿