Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/378.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何编写import语句来引用jar中的java类?_Java_Package - Fatal编程技术网

如何编写import语句来引用jar中的java类?

如何编写import语句来引用jar中的java类?,java,package,Java,Package,当目录结构是这样时,如何引用stdlib1.jar中的Java类?如何编写导入语句 我想在stdlib1.jar下调用一个方法,我已经配置了它 这些类位于默认包中。根据,无法从默认包导入类。因此,必须将它们移动到另一个包中,或者您必须使用反射。这些类位于默认包中。根据,无法从默认包导入类。因此,必须将它们移动到另一个包中,或者必须使用反射。从类而不是从包中调用方法。 从属于jar的类调用方法时,不需要指定jar。重要的是您的jar在类路径中 在您的屏幕截图中,如果lib成为classpath文件

当目录结构是这样时,如何引用
stdlib1.jar
中的Java类?如何编写导入语句

我想在
stdlib1.jar
下调用一个方法,我已经配置了它


这些类位于默认包中。根据,无法从默认包导入类。因此,必须将它们移动到另一个包中,或者您必须使用反射。

这些类位于默认包中。根据,无法从默认包导入类。因此,必须将它们移动到另一个包中,或者必须使用反射。

从类而不是从包中调用方法。
从属于jar的类调用方法时,不需要指定jar。重要的是您的jar在类路径中
在您的屏幕截图中,如果
lib
成为classpath文件夹的一部分,您可以在代码中导入并使用其中的类

在这里,jar的类使用默认包(没有包名),这对于第三方库来说似乎很奇怪。不建议使用默认包,因为它不允许自然引用和使用客户端代码中的归档类。
我不确定您使用的jar版本是否正确。
请看:

它包含
edu.princeton.cs
包中的类:

使用包,您可以声明以下内容:

例如:

您可以创建一个这样的类,并像这样使用BinaryIn:

package main;
import edu.princeton.cs.BinaryIn;

public class MyClass(){
  public static void main(String args[]){
    BinaryIn in = new BinaryIn();
  }
}

您可以从类而不是从包调用方法。
从属于jar的类调用方法时,不需要指定jar。重要的是您的jar在类路径中
在您的屏幕截图中,如果
lib
成为classpath文件夹的一部分,您可以在代码中导入并使用其中的类

在这里,jar的类使用默认包(没有包名),这对于第三方库来说似乎很奇怪。不建议使用默认包,因为它不允许自然引用和使用客户端代码中的归档类。
我不确定您使用的jar版本是否正确。
请看:

它包含
edu.princeton.cs
包中的类:

使用包,您可以声明以下内容:

例如:

您可以创建一个这样的类,并像这样使用BinaryIn:

package main;
import edu.princeton.cs.BinaryIn;

public class MyClass(){
  public static void main(String args[]){
    BinaryIn in = new BinaryIn();
  }
}

谢谢。我想当我在默认包中使用类时,我不需要导入默认包。因为我的IDE(intellij ideal14)中没有错误,它表示它是正确的声明,但我没有运行它。谢谢你的正确代码,但我仍然想知道它在我的代码中如何工作。(下次我将更改…)这正是您在运行rhe类时的错误,您可以发布该类吗?StdIn.class.getPackage().getName();和控制台:线程“main”java.lang.NullPointerException中存在异常。我可以理解可以找到StdIn,但我可以按ctrl键并单击“Stdln”以获取其源代码。如前所述,
StdIn
位于默认包中,该包为空。因此,当您调用
StdIn.class.getPackage()
时,它返回
null
,当您调用
null
对象上的方法时,会抛出一个
NullPointerException
。感谢您。您是对的。我得到了一个jar,其中类都包含在默认包中,因此,无论我把前面的包放在哪里,我不能以正确的方式调用它,但我可以在src>Main.java/test.java>Main()文件中调用它(这样它可以调用Scanner.in()方法之类的方法),但我不能在src>test>test.java>Main()中调用它。原因是什么?(糟糕的英语)。我的意思是两点:第一,默认包不能返回包含的类的属性。但是包含的类的一些特殊类型的方法仍然可以工作。第二,如果我在其他地方调用,这些方法不会调用success。谢谢。我想当我在默认包中使用class时,我不需要导入默认包。因为我的IDE(intellij ideal14)中没有错误,它表示这是一个正确的声明,但我没有运行它。谢谢你的正确代码,但我仍然想知道它在我的代码中是如何工作的。(下次我将更改…),这正是您运行该类时的错误,您可以发布该类吗?StdIn.class.getPackage().getName();和控制台:线程“main”java.lang.NullPointerException中存在异常。我可以理解可以找到StdIn,但我可以按ctrl键并单击“Stdln”以获取其源代码。如前所述,
StdIn
位于默认包中,该包为空。因此,当您调用
StdIn.class.getPackage()
时,它返回
null
,当您调用
null
对象上的方法时,会抛出一个
NullPointerException
。感谢您。您是对的。我得到了一个jar,其中类都包含在默认包中,因此,无论我把前面的包放在哪里,我不能以正确的方式调用它,但我可以在src>Main.java/test.java>Main()文件中调用它(这样它可以调用Scanner.in()方法之类的方法),但我不能在src>test>test.java>Main()中调用它。原因是什么?(糟糕的英语)。我的意思是两点:第一,默认包不能返回包含的类的属性。但是包含的类的一些特殊类型的方法仍然可以工作。第二,如果我在其他地方调用success,这些方法不会调用success。你是说我的项目下的文件和包外的src不能直接使用,除非经过反射吗?我不是说
src
-目录,但是其中的目录表示Java包,并且也在
Java
-文件的顶部声明。必须有一个类所属的包。如果不是,将隐式使用默认包。
src
-目录包含源代码。我