无法进行静态导入



//Interface1.java

package package1;
   public interface interface1 {
      static final int a =10;
   }

//staticimporttest.java

 import static package1.*;         //import package1.*; works
   class StaticImportTest {
      public static void main(String args[]) {
        System.out.println(a);     //System.out.println(interface1.a) works
      }
   }

当我仅用"导入"替换"导入静态"一词并使用System.out.println(Interface1.a(时,它可以正常工作,但不确定为什么它以当前形式不起作用。

<</p>

,您的静态导入以您的意图工作方式必须为 import static package1.interface1.*import static package1.interface1.a
静态导入导入类的公共静态成员,均以 *或特定的类别(例如a(。
另一方面,导入的包裹或特定类从软件包导入。

您的import static package1.*将尝试从root软件包中的类package1导入所有成员。

使其成为正常的导入,并通过interface1.a访问a,因为该导入来自package1(包括interface1(的所有类,因此您可以通过interface1类访问a

相关内容

  • 没有找到相关文章

最新更新