“静态”是什么意思? “导入”后的修饰符 意思是?
当这样使用时:
import static com.showboy.Myclass;
public class Anotherclass{}
import static com.showboy.Myclass
和import com.showboy.Myclass
有什么区别?
When used like this:
import static com.showboy.Myclass;
public class Anotherclass{}
what's the difference between import static com.showboy.Myclass
and import com.showboy.Myclass
?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(8)
请参阅文档
See Documentation
您所说的这两种进口之间没有区别。 但是,您可以使用静态导入来允许对其他类的静态成员进行非限定访问。 我曾经必须这样做的地方:
我可以这样做:
您可以在 文档。
There is no difference between those two imports you state. You can, however, use the static import to allow unqualified access to static members of other classes. Where I used to have to do this:
I can do this:
You can see more in the documentation.
静态导入用于导入类的静态字段/方法,而不是:
您可以编写:
如果您经常在代码中使用来自另一个类的常量并且静态导入明确,那么它会很有用。
顺便说一句,在您的示例中“import static org.example.Myclass;” 不起作用: import 用于类, import static 用于类的静态成员。
Static import is used to import static fields / method of a class instead of:
You can write :
It is useful if you are often used a constant from another class in your code and if the static import is not ambiguous.
Btw, in your example "import static org.example.Myclass;" won't work : import is for class, import static is for static members of a class.
静态导入的基本思想是,每当您使用静态类、静态变量或枚举时,您都可以导入它们并节省一些输入。
我将用例子来阐述我的观点。
相同的代码,具有静态导入:
注意:静态导入可能会使您的代码难以阅读。
The basic idea of static import is that whenever you are using a static class,a static variable or an enum,you can import them and save yourself from some typing.
I will elaborate my point with example.
Same code, with static imports:
Note: static import can make your code confusing to read.
第一个应该生成编译器错误,因为静态导入仅适用于导入字段或成员类型。 (假设 MyClass 不是内部类或来自 showboy 的成员)
我认为您的意思
是使 MyClass 中的所有静态字段和成员在实际编译单元中可用,而无需限定它们...如上所述
The first should generate a compiler error since the static import only works for importing fields or member types. (assuming MyClass is not an inner class or member from showboy)
I think you meant
which makes all static fields and members from MyClass available in the actual compilation unit without having to qualify them... as explained above
import
允许 java 程序员无需包限定即可访问包的类。静态导入
功能允许在没有类限定的情况下访问类的静态成员。import
提供对类和接口的可访问性,而static import
则提供对类的静态成员的可访问性。示例:
使用导入
使用静态导入
另请参阅:什么是 Java 5 中的静态导入
The
import
allows the java programmer to access classes of a package without package qualification.The
static import
feature allows to access the static members of a class without the class qualification.The
import
provides accessibility to classes and interface whereasstatic import
provides accessibility to static members of the class.Example :
With import
With static import
See also : What is static import in Java 5
假设您在名为
myPackage
的包内名为MyClass
的类中有静态字段和方法,并且您希望通过键入myStaticField
或 < code>myStaticMethod,无需每次都键入MyClass.myStaticField
或MyClass.myStaticMethod
。注意:你需要做一个
导入 myPackage.MyClass
或myPackage.*
用于访问其他资源
Say you have static fields and methods inside a class called
MyClass
inside a package calledmyPackage
and you want to access them directly by typingmyStaticField
ormyStaticMethod
without typing each timeMyClass.myStaticField
orMyClass.myStaticMethod
.Note : you need to do an
import myPackage.MyClass
ormyPackage.*
for accessing the other resources
import
之后的static
修饰符用于检索/使用类的静态字段。 我使用 import static 的一个领域是从类中检索常量。我们还可以在静态方法上应用
import static
。 确保输入import static
,因为static import
是错误的。什么是 Java 中的
static import
- JavaRevisited - 一个非常好的资源,可以了解更多关于import static
的信息。The
static
modifier afterimport
is for retrieving/using static fields of a class. One area in which I useimport static
is for retrieving constants from a class.We can also apply
import static
on static methods. Make sure to typeimport static
becausestatic import
is wrong.What is
static import
in Java - JavaRevisited - A very good resource to know more aboutimport static
.