-
jdk中容器源码的一些疑问5
ListIterator中继承了Iterator。为什么还要将Iterator的方法重载一边呢?
另外concrete collection比如:ArrayLIst为什么在extends AbstractList之后还要去 implements list呢?
不晓得哪位大侠帮我解惑2014年3月10日 21:05
1个答案 按时间排序 按投票排序
-
采纳的答案
个人看法,可能不合理,仅供参考,以上是处于可读性的角度考虑的:
1)ListIterator:提供两个方向的迭代器,如果只有hasPrevious没有hasNext,可能看起来会比较奇怪,毕竟Iterator中的hasNext的语义是“单向”的判断,并不是“向前”的判断,但是ListIterator将HasNext作为向前判断的语义了。 又由于希望调用者能够将ListIterator看做是Iterator,所以做了继承。 去掉这个方法声明实际上是可以的(在方法声明、Javadoc解释方面做进一步明确化);
2)ArrayLIst implements List,让读者比较容易能够知道是这个接口关系,或许和javadoc生成有关系(这个没有测试过)2014年3月11日 09:33
相关推荐
在本文中,我们将深入探讨JDK 8u60的源码,揭示其内部工作机制,帮助开发者更好地理解和利用这个强大的开发工具。 首先,我们关注的是"IMPORT_README"文档,这通常是项目导入或构建过程的关键指南。在阅读此文档时...
其次,Sun私有实现部分通常包含了一些Oracle专有的优化和特性,这部分源码对于研究JVM(Java虚拟机)的内部工作原理,如垃圾收集器、类加载器、性能调优等有着极大的价值。例如,JDK8引入了G1垃圾收集器的改进版,...
下载后直接去本机jdk目录里替换jdk中的src.zip 再打开idea就能看到中文版的源码注释 示例 https://blog.csdn.net/a7459/article/details/106495622
在JDK 1.8版本中,虽然已经包含了大部分核心类库的源代码,但某些特定的Sun Microsystems(后被Oracle收购)实现的内部类或模块,如JNI(Java Native Interface)和一些性能优化的代码,通常并不公开。这些内部实现...
JDK源码,JDK源码,JDK源码,JDK源码,JDK源码,JDK源码,JDK源码
JDK1.8中文源码手册 无广告
4. **多线程**:JDK 1.6支持多线程编程,源码中包括了`Thread`类和`synchronized`关键字的实现,以及线程同步机制如`wait()`, `notify()`, `notifyAll()`。 5. **I/O流**:在`java.io`包中,你可以看到文件读写、...
jdk_1.6源码中文版。。
jdk6 源码jdk6 源码jdk6 源码jdk6 源码jdk6 源码jdk6 源码
- **sun**: 这个包包含了一些Sun Microsystems的私有实现,通常不推荐在公共代码中使用,因为它们可能在未来的JDK版本中改变或移除。 2. **OpenJDK 1.8的关键特性** - ** Lambdas表达式**: 引入了函数式编程概念...
安装完JDK后,会在%JAVA_HOME% /jdk文件夹下生成一个src.zip,此文件夹对应rt.jar中的java源码,但细心研究后发现rt.jar中sun包下的文件不存在,也就是说sun包下的java源码并没有打包到src.zip中,可以到...
压缩包中为JDK8的源码,在源码的注释下方附带的中文翻译,是本压缩包的亮点,下方为局部代码,示范给大家: * Sole constructor. Programmers cannot invoke this constructor. * It is for use by code emitted ...
4. **jdk.unsupported.desktop**: 此模块包含了一些非标准的、与桌面环境相关的API,这些API可能在未来的Java版本中被移除。它们主要用于支持一些特定的操作系统功能,如文件选择对话框或打印服务。 5. **jdk....
精确的版本号是jdk-8u181。想不通,竟然很多人都收费,这个明明可以在安装JDK的目录中找到啊!自己下一个JDK就可以得到。
首先,JDK1.8的源码中包含了"sun"包,这是Oracle JDK特有的一个包,包含了Oracle对Java平台的一些内部实现。"sun"包下有很多关键的类和接口,比如反射机制的核心类`sun.reflect.*`,JVM内部类加载器`sun.misc....
1. **Java虚拟机(JVM)**: JDK的源码中包含了Java虚拟机的实现,JVM是Java程序的执行环境。通过源码,我们可以看到字节码如何被解析和执行,以及垃圾收集器的工作机制,比如分代垃圾回收、并发标记扫描(CMS)或G1垃圾...
4. **接口默认方法**:JDK1.8引入了默认方法,允许接口中定义具有实现的抽象方法,解决了增加新方法导致的实现类冲突问题,同时也使得接口可以充当行为的容器。 5. **Date与Time API更新**:Java 8改进了日期和时间...
JDK1.7版本的源码提供了对Java语言核心库的深入洞察,而sun包下的源码更是其中的重要组成部分,因为它们包含了Java的核心实现和一些私有API。然而,标准的JDK1.7发行版并未包含完整的sun包源码,这给开发者带来了...
9. **多线程编程**:JDK11中的`java.util.concurrent`包提供了丰富的并发工具类,源码中可以看到这些类的实现细节,有助于理解并发原理。 10. **类加载机制**:JDK11的类加载机制仍然遵循“双亲委派模型”,源码中...
JDK1.7 API源码, 本人制作了一个JDK API官方源代码的chm,方便在移动设备上查看