是否有任何工具允许您“查询”(而不是简单地搜索)JDK文档?例如:

>向我展示所有弃用的方法.

>向我展示特定类的所有子类(而不仅仅是文档提供的直接子类).

>显示返回(比方说)线程的所有方法.

>显示给定方法名称的所有实例,无论签名如何.

提出这个问题的原因是我弄乱了两个完全不相关的方法,我偶尔只使用它们:Pattern.matches()和Matcher.matches().然后我发现还有PathMatcher.matches(),它也有一个完全不相关的目的.这让我想知道JDK中有多少其他“匹配()”方法.然后我认为可能还有其他有用的查询也可以针对JDK文档运行.

拥有这样一个工具的唯一动机是帮助我用有趣或有用的信息(至少对我来说)来提高我自己的Java知识,但是不容易获得.这question is similar,但我正在寻找比简单搜索更复杂的东西.

ETA:Marcel在下面使用Doclet API的建议提供了一个很好的解决方案,而不需要太多努力.

ETA2:重新确定弃用的方法,我刚刚发现Oracle已经在JavaDoc API here中解决了这个问题

最佳答案 难道你是从错误的角度接近这个吗?而不是解析文档,这是已经转换的源代码表示,为什么不直接解析JDK的源代码或字节代码?

根据您的需要,您可能还想采取非常简单的道路,并在reflections library上扫描您的类路径.

Reflections reflections = new Reflections("some.package");

Set voidMethods = reflections.getMethodsReturn(Thread.class);

话虽如此,但不要忘记任何好的IDE都可以挖掘出你想要寻找的大量信息(例如,搜索称为匹配的方法).

java jdk文档查询方法_查询Java JDK文档的元数据相关推荐

  1. Java不区分大小写模糊查询方法_查询语句中不区分大小写和区分大小写及其模糊查询 的语句...

    1:不区分大小写的函数 collate Chinese_PRC_CI_AS select * from J01 left join S40 on J0101=S4004 collate Chinese ...

  2. java碰到乱码如何解决方法_如何处理java的乱码

    为什么说乱码是中国程序员无法避免的话题呢?这个首先要从编码机制上说起,大家都是中文和英文的编码格式不是一样,解码也是不一样的! 如果中国的程序员不会遇到乱码,那么只有使用汉语编程.汉语编程是怎么回事, ...

  3. java中null的使用方法_使用java中的方法避免!= null

    I want to avoid writing getView != null every time I want to use getView ? 您可以使用Null Object模式来避免在程序中 ...

  4. java中如何使用add方法_使用Java中的Calendar.add()方法将秒添加到当前日期

    为Java中的Calendar类导入以下软件包.import java.util.Calendar; 首先,创建一个Calendar对象并显示当前日期和时间.Calendar calendar = C ...

  5. Learning to rank的讲解,单文档方法(Pointwise),文档对方法(Pairwise),文档列表方法(Listwise)

    学习排序(Learning to Rank) LTR(Learning torank)学习排序是一种监督学习(SupervisedLearning)的排序方法.LTR已经被广泛应用到文本挖掘的很多领域 ...

  6. mysql求和 子查询_MYSQL 查询方法 统计查询 链接查询 子查询

    mysql表格查询方法: 查询: 1.简单查询 select * from Info --查所有数据 select Code,Name from Info --查指定列的数据 select Code ...

  7. 46栈内存溢出、内存区域(程序计数器、Java 虚拟机栈、本地方法栈、Java 堆、方法区、直接内存、内存溢出)与内存溢出(对象实例化分析)

    46.什么情况下会发生栈内存溢出 46.1.Java 内存区域与内存溢出 46.1.1.内存区域 46.1.1.1.程序计数器 46.1.1.2.Java 虚拟机栈 46.1.1.3.本地方法栈 46 ...

  8. php方法帮助文档,Trace方法_帮助文档_Thinkphp手册

    Trace方法_帮助文档_Think 页面Trace只能用于有页面输出的情况,但是trace方法可以用在任何情况,而且trace方法可以用于AJAX等操作. Trace方法的格式:trace('变量' ...

  9. java 文档比较功能_[原创]java在线比较两个word文件

    一.项目背景 开发文档管理系统或OA办公系统的时候,实现在线处理word文档的功能比较容易,但是也经常会有客户提出文档版本管理的需求,这就需要同时在线打开两个word文件,对比两个不同版本的word文 ...

最新文章

  1. ubuntu数据库安装配置
  2. 【收藏】HUE配置HDFS
  3. 软件测试需求人才越来越多
  4. P3327 [SDOI2015]约数个数和
  5. echo添加换行 linux_在 Linux 上创建文件的 10 个方法
  6. 将JavaScript函数作为参数传递
  7. win10samba服务器配置_win10访问samba配置共享目录,踩坑记
  8. 基于catia活塞的有限元分析_渐开线插齿刀自动化设计系统及有限元分析
  9. c ++异常处理_C ++中的异常处理
  10. 【语音识别】基于matlab GUI声纹识别【含Matlab源码 1022期】
  11. Base64 | Base32 | Base16编码和解码小结
  12. 思科多个交换机不同VLAN的配置
  13. 基于数电的交通灯控制器
  14. OpenCV识别图形以及常用函数处理
  15. linux常中的cat命令,linux下cat命令详解
  16. erp采购总监个人总结_ERP沙盘实训采购总监总结,学到了很多知识,受益匪浅
  17. 麻省理工的服务器位置,美国麻省理工学院的地理位置
  18. [转]完美解决图片/链接虚线边框
  19. win7java浏览器崩溃_win7系统浏览器页面一直崩溃的修复方法
  20. 列举常用字节输入流和输出流

热门文章

  1. Linux下配置服务器节点上的时区
  2. python输出玫瑰花_如何用python画玫瑰花
  3. Python学习之路39-特性property
  4. 《大道至简》阅读笔记
  5. Swift多线程:GCD进阶,单例、信号量、任务组
  6. futureTask的超时原理解析
  7. VBA_输出SQL查询数据
  8. java以目标尺寸按原图片像素比缩放切割图片
  9. VMware 8.0不能手动安装Linux5.5(命令行)问题解决方法
  10. 记ByteCTF中的Node题