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

标签 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。 如何解决这个问题?

最佳答案

您没有提供有关您所做的事情的确切信息,但我担心您正在使用类似的调用来一一编译类

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 位于类路径上。

关于java - 包中的类如何使用同一包中其他类的静态方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56208197/

相关文章:

Java:缓冲区实用程序?

java - if 语句和输入来计算温度

java - Spring Boot 应用程序无法在 Elastic Beanstalk 上启动

java - 在 java.util.logging 中,全局记录器有什么用?

Java int 数组到 HashMap<Integer, Boolean> 和 IntStream

java - 阶段中的 LibGDX Actor 未收到点击事件

java - 如何更改 CA SDM 中变更单的子工作流的状态?

java - 客户端Google Earth + JS;服务器端Java包

java - LibGDX渲染和更新调用速度

java - 如何在对象中保存私有(private)字段(在方法中获得)的值?