【问题标题】:How do I learn Java5 or Java6? [closed]我如何学习 Java 5 或 Java 6? [关闭]
【发布时间】:2010-09-08 22:45:22
【问题描述】:

我是一位经验丰富的 Java 程序员,我一直在使用 Java 1.4 及更早版本。我在哪里可以找到一份快速参考资料,它可以为我提供有关 Java5 新功能的所有信息以及以后的快速参考资料?

【问题讨论】:

  • 许多 Java5 / Java6 功能比您想象的要复杂。您可能应该得到的不仅仅是快速概览。注意自动装箱!它可能是邪恶的!

标签: java


【解决方案1】:
【解决方案2】:

Java 5 引入了几项重大更新,例如语言改进(即注释、泛型、自动装箱和改进的循环语法)等等。注释是一种使用元数据标记类的机制,以便元数据感知程序可以使用它们。泛型是一种为属于集合的对象(例如 Arraylists)指定类型的机制,以便在编译时保证类型安全。自动装箱允许基本类型(例如 int)和包装器类型(例如 Integer)之间的自动转换。改进的循环语法包括对每个循环的增强,以便比较容易地遍历数组或集合的项目。

Java 6 专注于新的规范和 API,包括 XML、Web 服务、JDBC 4.0 版、基于注释的编程、Java 编译器的 API 和应用程序客户端 GUI。随着 Java 6 添加了新的编译器 API,Java 编译器现在可以接收和/或将输出发送到文件系统的抽象(程序可以指定/处理编译器输出)。此外,Java 6 在 AWT(更快的启动屏幕和对系统托盘的支持)和 SWING(更好的拖放、对自定义布局的支持、多线程增强和编写 GIF 图像的能力)中添加了对应用程序 GUI 功能的增强。

【讨论】:

    【解决方案3】:

    我会彻底推荐 Brian Goetz、Tim Peierls、Joshua Bloch 和 Joseph Bowbeer 的 Java Concurrency in Practice。它仅关注良好的并发编码,但包含有关 Java 5 和 6 库中新并发特性的出色指导。

    当然,它对其他特性毫无帮助,但如果你曾经处理过线程(如果你有 GUI,那么你就有线程),那么这本书是必不可少的。

    【讨论】:

      【解决方案4】:

      Dietel : How to program Java

      强烈推荐这本书。什么都教,做得好。从简单的 Hello World 开始,到您编写自己的 BASIC 编译器结束。也处理数据库。什么都做,嗯,设计。只是不能说太多。

      而且这本书也很漂亮,我的意思是在设计和色彩方面,它并不枯燥。

      【讨论】:

        【解决方案5】:

        我可以推荐 Bruce Eckel 的“Thinking in Java”第 4 版。他回顾了一堆你可以跳过的基本内容,但他对 1.5 新特性的处理非常透彻,尤其是关于泛型的章节。并且它是一个很好的 Java 参考。

        【讨论】:

          【解决方案6】:

          Java 5 new features

          Java 6 new features

          真正的关键在于 Java 5。泛型、自动装箱、注解。

          【讨论】: