Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/svg/2.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
Java 如何从默认包静态导入类?_Java_Oop - Fatal编程技术网

Java 如何从默认包静态导入类?

Java 如何从默认包静态导入类?,java,oop,Java,Oop,我有两个类:类A和类B,这两个类都是无包的(在默认包中)。我想将A的静态变量导入并使用到B中。如何才能使其编译 以下内容未被编译: A.java public class A { public static int x = 10; } import static A.x; public class B { public static void main(String[] args) { System.out.println(x); } } B.jav

我有两个类:类A和类B,这两个类都是无包的(在默认包中)。我想将A的静态变量导入并使用到B中。如何才能使其编译

以下内容未被编译:

A.java

public class A {
    public static int x = 10;
}
import static A.x;

public class B {
    public static void main(String[] args) {
        System.out.println(x);
    }
}
B.java

public class A {
    public static int x = 10;
}
import static A.x;

public class B {
    public static void main(String[] args) {
        System.out.println(x);
    }
}
编译器输出:
B.java:1:错误:仅从类和接口进行静态导入这在java中是不可能的,您必须将它们打包在一个唯一或不同的包中

或者您可以使用:

System.out.println(A.x);

您可以在java文档中阅读更多关于

如何进行编译?删除导入并写入
A.x
,或者开始使用软件包。为什么不将代码放入包中?不能,这也是我们不应该将类放入默认包的原因之一。