繁体   English   中英

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

[英]How can a class in a package use other classes in the same package's static methods?

我在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。如何解决此问题?

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

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

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

javac abc/A.java abc/B.java

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

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

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM