gpt4 book ai didi

带有 * 的 Java import 语句不拾取类

转载 作者:搜寻专家 更新时间:2023-10-31 08:22:40 24 4
gpt4 key购买 nike

(免责声明:我是 Java 的新手,而且我已经阅读了相关的 SO question。)

我有以下代码:

import org.apache.pdfbox.pdmodel.*;
...
PDFont font = PDType1Font.HELVETICA_BOLD;

但是 PDFont 类在 Eclipse 中不被识别。

当我添加以下内容时:

import org.apache.pdfbox.pdmodel.font.PDFont;

PDFont 类被拾取。

鉴于 PDFont 类位于第一个以星号结尾的导入语句中指定的层次结构下,为什么需要特定的导入语句?

此外,如果手边没有文档,是否有一种方法可以搜索类在库中的位置?

最佳答案

The on demand import declarations are not recursive

A type-import-on-demand declaration allows all accessible types of a named package or type to be imported as needed.

您的 PDFont 类型在包中

org.apache.pdfbox.pdmodel.font

但你已经尝试导入

 import org.apache.pdfbox.pdmodel.*;

org.apache.pdfbox.pdmodel 不包含名为 PDFont 的类型。

所以,或者,你可以使用

 import org.apache.pdfbox.pdmodel.font.*;

Also, is there a way to search for the location of a class in a library if one doesn't have the documentation handy?

如果该库作为 .jar 发布,您可以将其解压缩并在其中进行搜索。

大多数 IDE 通常具有通过简单名称搜索类型的功能。例如,在 Eclipse 中,您可以使用 CTRL (cmd) + SHIFT + T 并键入要搜索的简单名称或完全限定名称(如果它在类路径中)。

关于带有 * 的 Java import 语句不拾取类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27660321/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com