26

如何将包中的方法导入另一个程序?我不知道如何导入......我写了一个 lil' 代码:

package Dan;
public class Vik
{
    public void disp()
    {
        System.out.println("Heyya!");
    }
}

然后,将它保存在一个名为“Dan”的文件夹中,然后我编译了它。生成 .class 文件。然后,我在下面写了这段代码:

import Dan.Vik.disp;
class Kab
{
    public static void main(String args[])
    {
        Vik Sam = new Vik();
        Sam.disp();
    }
}

我把它保存在“Dan”文件夹之外,上面写着:“找不到符号”

我将第一个代码保存在 C:\Dan\Vik.java 中,第二个保存在 C:\Kab.java

4

7 回答 7

18

您不导入 Java 中的方法,只导入类型:

import Dan.Vik;
class Kab
{
    public static void main(String args[])
    {
        Vik Sam = new Vik();
        Sam.disp();
    }
}

所谓的“静态导入”是个例外,它允许您static从其他类型导入类 ( ) 方法。

于 2012-09-03T13:36:18.837 回答
11

在 Java 中,您只能导入类 Names静态方法/字段。

导入类使用

import full.package.name.of.SomeClass;

导入静态方法/字段使用

import static full.package.name.of.SomeClass.staticMethod;
import static full.package.name.of.SomeClass.staticField;
于 2012-09-03T13:40:41.793 回答
8

从导入语句中取出方法名称。例如

import Dan.Vik.disp;

变成:

import Dan.Vik;
于 2012-09-03T13:36:11.120 回答
2

你应该使用

import Dan.Vik;

这使得类可见并且它的公共方法可用。

于 2012-09-03T13:36:02.630 回答
2

这是在 Java 中进行导入的正确方法。

import Dan.Vik;
class Kab
{
public static void main(String args[])
{
    Vik Sam = new Vik();
    Sam.disp();
}
}

您不会在 java 中导入方法。静态导入有一个高级用法,但基本上你只是导入包和类。如果您要导入的函数是静态函数,您可以进行静态导入,但我认为您不是在这里寻找静态导入。

于 2012-09-03T13:38:54.303 回答
1

在 Java 中,您只能导入类名称或静态方法/字段。

导入类使用

import full.package.name.of.SomeClass;

我们还可以在 Java 中导入静态方法/字段,这就是导入的方法

import static full.package.nameOfClass.staticMethod;
import static full.package.nameOfClass.staticField;
于 2017-02-26T03:49:32.087 回答
0

对于第二个类文件,添加“package Dan;” 像第一个一样,以确保它们在同一个包中;修改“导入 Dan.Vik.disp;” 成为“进口 Dan.Vik;”

于 2012-09-03T13:37:16.687 回答