【发布时间】:2016-01-13 13:39:45
【问题描述】:
又是我。所以这是交易,我仍然不知道我是否做错了什么。
我正在尝试创建自己的个人库,其中我有某些字符串方法等等。
我首先创建了一个作为 Java 库的新项目:
然后我在该库中添加了一个包:
之后我在该包中创建了一个类:
这里是我班级的代码:
并清理并构建了该类//库。 Run -> Clean and Build
然后创建了JavaDoc Run -> Generate JavaDoc(MyTestLibrary)
完成此操作后,我决定将我新创建的库添加到 Tools - > Libraries 下的库中:
之后我添加了一个新库(右下角)并将其命名为 TestLibrary:
所以决定先添加 .jar 文件。我单击“添加 JAR/文件夹...”选项并搜索我的 Projekt 文件夹(来自 MyTestLibrary)并进入“dist”文件夹并选择 .jar 文件:
之后,我在“Sources”中添加了“src”文件夹,在“Javadoc”中添加了“javadoc”文件夹。
完成后是时候创建一个新项目,准确地说是一个新的 Java 应用程序,并尝试导入我新创建的库。我右键单击库并单击“添加库...”:
并导入我的测试库并添加它:
很高兴我已将我的库添加到我的应用程序中,我决定导入它
import TestPackage.TestClass;.
如果我尝试
public static void main(String[] args)
{
TestClass.
}
唯一的建议是TestClass.class 而不是TestClass.TestMethod。
为什么我不能直接访问“TestClass”的方法?
我怎样才能看到它们?
我尝试过尽可能具体。我希望这次我能完全理解发生了什么以及为什么我无法访问它们。
【问题讨论】:
-
因为该方法不是静态。您必须创建
TestClass的实例才能运行该方法。 -
有没有办法解决对静态的需求?并且不使用实例?
-
@MilesA。如果你想使用没有实例的方法,不。这就是java的设计方式。静态方法让您无需实例即可访问它们,非静态方法不能那样使用。
-
@MilesA。不。 Java 不提供全局方法。因此,
static方法是您最好的选择,如果您想在不创建实例的情况下使用方法。 -
由于您不清楚 Java 的基本概念,您可能也不应该尝试编写自己的库。这里只是一个现实检查,以防止您浪费太多时间。
标签: java netbeans shared-libraries