静态嵌套类的静态导入或普通导入

时间:2019-05-08 17:30:00

标签: java

我知道传统的import语句用于类,而import static语句用于静态成员。但是,对于静态嵌套类,应该使用什么?

考虑:

public class MyUtilityClass {
    public static class SomeNestedClass {
        //...
    }
    public static class AnotherNestedClass {
        //...
    }
}

使用方式:

import MyUtilityClass.AnotherNestedClass;
import static MyUtilityClass.SomeNestedClass;

public class Main {
    public static void main(String[] args) {
        SomeNestedClass a = new SomeNestedClass();
        AnotherNestedClass b = new AnotherNestedClass();
    }
}

您看到,importimport static语句都可以使用。但是,大多数编码指南中哪个更正确,或更典型,更推荐?

1 个答案:

答案 0 :(得分:0)

作为一般的最佳实践,static import 应该用于成员,import 应该用于类。

来自java documentation for static import

<块引用>

普通导入声明从包中导入类,允许它们在没有包限定的情况下使用,静态导入声明从类中导入静态成员,允许它们在没有类限定的情况下使用。