包中的类如何在同一包的静态方法中使用其他类?

时间:2019-05-19 13:18:24

标签: java

我在abc包中有A和C类。 A具有静态方法showA()。现在我想在C语言中使用此方法。该怎么做?

package abc;
public class A{
    public void static showA()
        System.out.println("I am in A");
    }
}

package abc;
public class C{
    public void static showC(){
        A.showA();
        System.out.println("I am in C");
    }
}

现在编译C时,它表明找不到变量A。 该如何解决?

1 个答案:

答案 0 :(得分:1)

您没有提供有关您所做操作的确切信息,但是我担心您会像这样的调用一个一个地编译类

javac abc/A.java
javac abc/B.java

您有2种可能性: 第一个是告诉编译器编译两个类。这样,两个类都将被知道:

javac abc/A.java abc/B.java

另一种可能性是告诉编译器在哪里可以找到所需的类文件。由于将A.Java编译到具有相同基本目录的A.class,因此可以执行以下调用:

javac abc/A.java
javac -cp . abc/B.java

使用-cp将本地目录添加到类路径中,以便A.class在类路径上。