what is the point of importing that class?
想象一下,您没有在java.util中导入类.如果要创建地图,请键入:
java.util.Map myMap = new java.util.HashMap<>();
如果将类导入到该包中,例如import java.util.* ;:
Map myMap = new HashMap<>();
If you are importing a class, and you don’t have access to the members
of that class
导入与访问无关,它们都与可读性和便利性有关.您不必键入太多,第二个声明更易于阅读,但是在两种情况下都可以使用相同的myMap方法.
书中提到的静态导入(从doc开始):
The static import declaration is analogous to the normal import
declaration. Where the normal import declaration imports classes from
packages, allowing them to be used without package qualification, the
static import declaration imports static members from classes,
allowing them to be used without class qualification.
静态导入的一个很好的例子是在单元测试中使用Mockito.没有任何导入,您可以验证一些行为,例如:
org.mockito.Mockito.verify(mock, org.mockito.Mockito.never()).someMethod();
如果使用普通导入,请导入org.mockito.Mockito ;:
Mockito.verify(mock, Mockito.never()).someMethod();
并使用静态导入导入静态org.mockito.Mockito.*;你可以输入
verify(mock, never()).someMethod();
在这里,即使不指定类(Mockito),也可以使用verify和never静态方法.