`
henryyang
  • 浏览: 111783 次
  • 性别: Icon_minigender_1
  • 来自: 珠海
文章分类
社区版块
存档分类
最新评论

JDK 源代码中的搞笑之处

阅读更多
JDK 源代码中的搞笑之处 Funny Things in JDK Source
  虽然完整版的 JDK 源代码现已开放了,但安装在 Java\jdk[版本号] 目录下的公共 src.zip 仍然是我最经常参考的资源。每次我遇到一个 API 问题,都会刊这个公共源代码。解决问题之余,我还找到很多有趣的东西,有时还搞笑。这里距三个例子。     Though the full version of JDK source is available now, but the public src.zip installed under Java\jdk[version_number] directory is still my most frequent refered resource. Every time I encounter an API problem, this public source is read. And besides solving those problems, I've also found many interesting things which are sometimes also funny. Here are three exaples.
  大概从 JDK 5.0 开始,类 java.lang.Object 引入了一个叫 wait(long timeout, int nanos) 的方法。等等,nanos,纳秒?众所周知,即使在强大的 Windows 多媒体 API 里面,计时器的精度也只有一毫秒,也就是一兆纳秒。尽管 Java 非常棒,但不能处理纳秒。而源代码证明了这一点,纳秒被舍入到最接近的毫秒,0 或 1……精彩……     Maybe since JDK 5.0, a method called wait(long timeout, int nanos) is introduced into Class java.lang.Object .Object. Wait a minute, nanos, is it nanoseconds? It's no secret thst even in powerful Windows multimedia API, the precision of timer is only one millisecond, that is a million nanosecond. Though Java is pretty great, it can not deal with nanoseconds. And the source proves it, that nanoseconds are rounded to the nearest millisecond, 0 or 1... Amazing...
  今天我想得到一个 JDialog 的所有者,但却没有 getOwner() 方法。最后我才明白 JDialog 的所有者就是它的父组件,用 getParent() 就可以了。那现在所有者等同于父级了?     Today I wanted to get a JDialog 's owner, but there's no method called getOwner() . Finally I was awear that the owner of a JDialog is exactly its parent component, and just using getParent() is okey. So owner is synonymous with parent now?
  最后,我想提下 JSpinner 的实现有错。一些安装在 JSpinner 上的侦听器丝毫不起作用。我在 JSpinner.java 里找到这段注释:“还是不对,我们没其他办法了,SpinnerModelJFormattedTextField 现已不同步了。”JDK 的开发者的诚实值得感谢。我的解决方法是直接操控复合式组件 JSpinner 中的 JFormattedTextField
0
2
分享到:
评论

相关推荐

    java jdk源代码

    Java JDK源代码是Java开发工具包的原始代码,对于任何想要深入理解Java语言工作原理的开发者来说,它都是一个无价的学习资源。JDK包含了Java运行环境、编译器、类库以及各种工具,它的源代码揭示了Java平台的内部...

    JDK源代码Java源码

    Java开发是每一个程序员在职业生涯中必须要面对的重要环节,而深入理解JDK源代码更是提升编程技艺的关键步骤。JDK(Java Development Kit)是Java平台的标准版,包含了Java运行时环境、Java工具和Java基础类库。Java...

    JDK1.8源代码

    **JDK 1.8 源代码分析** JDK(Java Development Kit)是Java编程语言的核心组件,包含了编译器、JVM(Java虚拟机)以及一系列的标准库。JDK 1.8版本是Oracle公司发布的一个重要版本,它引入了许多新特性,对Java...

    jdk 1.6 源代码一

    6. **JVM接口**:虽然JDK源代码不包含JVM本身,但`sun.misc`和`sun.reflect`包提供了一些与JVM交互的接口,如`Unsafe`类,它允许我们执行一些底层操作。 7. **国际化与本地化**:`java.text`和`java.util.locale`包...

    jdk源代码src.zip

    深入研究JDK源代码,不仅可以帮助我们更好地理解和使用Java提供的各种API,还能让我们学习到优秀的编程实践和设计模式。比如,观察Collections类的静态工厂方法,可以学习如何编写高效且易于使用的工具类;研究...

    java jdk 宝典 源代码

    JDK源代码包含了Java标准版(Java SE)的所有核心类库,如`java.lang`、`java.util`、`java.io`等,这些都是开发者日常工作中频繁使用的模块。通过查看源代码,我们可以看到类、接口、方法的具体实现,这对于提升...

    JDK7源代码

    虽然在JDK8之后,部分sun包已被移除或重命名,但在JDK7中,这部分源代码仍然是理解Java底层运行机制的关键。 sunw 目录: 这个目录在较旧的Sun Microsystems JDK中常见,主要用于提供特定于Solaris操作系统的类。在...

    jdk1.4.2源代码

    《深入解析JDK1.4.2源代码》 JDK1.4.2是Java开发工具包的一个重要版本,它的源代码对于理解Java语言的底层实现和优化有着极高的价值。本文将从核心组件、类库结构以及关键功能等方面,深入剖析JDK1.4.2的源代码,...

    JAVA JDK完整源代码

    Java JDK完整源代码是开发者深入理解Java平台工作原理和实现机制的重要资源。它包含了Java开发工具集(Java Development Kit)的所有核心组件的源代码,帮助程序员在遇到问题时能够查看底层实现,提升学习和调试效率...

    JDK1.6源代码.part1

    JDK1.6源代码,这是第一部分,有兴趣的可以看一下

    jdk12源代码

    **JDK12源代码详解** JDK12是Java Development Kit的一个重要版本,它包含了对Java编程语言和运行环境的诸多改进与新特性。这个压缩包提供了JDK12的源代码,对于开发者来说,这是一个宝贵的资源,可以深入理解Java...

    jdk7源代码

    通过深入学习JDK 7的源代码,开发者可以更好地理解Java语言的工作原理,提高编程技能,并对新旧版本之间的差异有更清晰的认识。 在JDK 7中,主要的新特性包括: 1. **多 catch 语句**:在异常处理方面,JDK 7允许...

    jdk1.1源代码

    JDK1.1源代码是Java发展史上的一个重要里程碑,标志着Java语言的初期形态,对于理解Java编程语言的演进历程及其基础概念具有极高的价值。在这个早期版本中,许多现代Java特性尚未引入,因此研究这些源代码可以帮助...

    jdk1.4源代码

    总的来说,JDK1.4的源代码是一份宝贵的教育资源,它揭示了Java语言的底层实现,帮助我们更好地理解类加载、内存管理、并发控制等核心概念。通过深入研究这些源代码,开发者不仅可以提升自己的编程技能,还能洞悉Java...

    jdk1.5.0_12源代码

    接下来,我们将详细探讨这些核心变化以及JDK源代码中的实现细节。 1. **泛型(Generics)**: 泛型是JDK1.5引入的一项重要特性,它允许在类、接口和方法中声明类型参数,提高了代码的类型安全性。通过源代码,我们...

    jdk-1.6.0 源代码 二

    **Java JDK 1.6.0 源代码解析** Java Development Kit (JDK) 是Java编程语言的核心组件,它包含编译器、运行时环境、调试工具和其他实用工具。JDK 1.6.0 版本是历史上的一个里程碑,它在Java的发展历程中占有重要的...

    java源代码,jdk里面的源代码

    Java JDK中的源代码是学习和理解Java编程语言及其运行机制的关键资源。这些源文件包含了Java开发工具集(Java Development Kit)的核心类库,涵盖了从基本的语法结构到高级特性的实现。下面我们将深入探讨这些源代码...

    JDK1.6 源代码

    **JDK1.6源代码详解** JDK(Java Development Kit)是Oracle公司提供的Java编程环境,包含了编译器、运行时环境、调试工具和其他实用工具。JDK1.6,也被称为Java SE 6,是Java历史上的一个重要版本,发布于2006年,...

    jdk1.6源代码

    通过研究JDK 1.6的源代码,开发者可以深入理解Java平台的工作机制,学习如何实现高效、可靠的代码,同时也能了解软件设计的优秀实践。这些源代码对于初学者来说是一份宝贵的教材,对于经验丰富的开发者则是一份宝贵...

Global site tag (gtag.js) - Google Analytics