`

import static静态导入

    博客分类:
  • java
 
阅读更多
import static静态导入是JDK1.5中的新特性。一般我们导入一个类都用 import com.....ClassName;而静态导入是这样:import static com.....ClassName.*;这里的多了个static,还有就是类名ClassName后面多了个 .* ,意思是导入这个类里的静态方法。当然,也可以只导入某个静态方法,只要把 .* 换成静态方法名就行了。然后在这个类中,就可以直接用方法名调用静态方法,而不必用ClassName.方法名 的方式来调用。

这种方法的好处就是可以简化一些操作,例如打印操作System.out.println(...);就可以将其写入一个静态方法print(...),在使用时直接print(...)就可以了。

但是这种方法建议在有很多重复调用的时候使用,如果仅有一到两次调用,不如直接写来的方便


example:
在Java 5中,import语句得到了增强,以便提供甚至更加强大的减少击键次数功能,虽然一些人争议说这是以可读性为代价的。这种新的特性成为静态导入。

当你想使用static成员时,可以使用静态导入(在API中的类和你自己的类上,都可以使用该特性)。下面是静态导入前后的代码实例:
在静态导入之前:
public class TestStatic {
    public static void main(String[] args) {
        System.out.println(Integer.MAX_VALUE);
        System.out.println(Integer.toHexString(42));
    }
}
在静态导入之后:

import static java.lang.System.out;
import static java.lang.Integer.*;

public class TestStaticImport {
    public static void main(String[] args) {
        out.println(MAX_VALUE);
        out.println(toHexString(42));
    }
}
两个类都产生相同的输出:
2147483647
2a
让我们看一下使用静态导入特性的代码中将发生什么:
1、虽然该特性通常称为“静态导入”,但语法必须是import static,后面跟你想导入的static成员的完全限定名称,或者通配符。在本例中,我们在System类的out对象上进行静态导入。
2、在本例中,我们可能想使用java.lang.Integer类的几个static成员。该静态导入语句使用通配符来表达“我想在此类中的所有静态成员上进行静态导入”。
3、现在我们终于看到静态导入特性的好处!我们不必在System.out.println中键入System。太好了!另外,我们不必在Integer.MAX_VALUE中键入Integer。因此,在这行代码中,我们能够将快捷方式用于静态方法和一个常量。
4、最后,我们进行更多的快捷操作,这次针对Integer类的方法。
关于该特性,我们已经有点儿讽刺意味儿了,但不仅我们是这样的。我们不认为节省少量的击键次数会让代码难于阅读一点,但许多开发人员要求将它添加到语言中。
下面是使用静态导入的几条原则:
你必须说import static, 不能说static import。
提防含糊不清的命名static成员。例如,如果你对Integer类和Long类执行了静态导入,引用MAX_VALUE将导致一个编译器错误,因为Integer和Long都有一个MAX_VALUE常量,并且Java不会知道你在引用哪个MAX_VALUE。
你可以在static对象引用、常量(记住,它们是static 或final)和static方法上进行静态导入。
分享到:
评论

相关推荐

    欧柏泰克:Java包的静态导入import static和import的区别

    欧柏泰克:Java包的静态导入import static和import的区别 Java中的静态导入是Java 5中引入的一项新特性,允许开发者在编写代码时更方便地使用静态方法和成员变量。下面我们来详细地了解Java中的静态导入和普通导入...

    Java的静态导入源代码

    在Java编程语言中,静态导入(static import)是一种特殊的导入方式,它允许程序员直接使用类中的静态成员,而无需每次都指定类名。这种特性在2004年发布的Java 5.0版本中引入,目的是为了提高代码的可读性和简洁性...

    Java 静态导入与编译器语法设置(eclipse)

    Java语言在不断发展,为了提高代码的可读性和简洁性,引入了静态导入(static import)这一特性。在Java 5中,静态导入允许开发者在不指定类名的情况下直接使用类中的静态成员,如静态变量和静态方法。这使得代码...

    JDK新特性之静态导入

    从JDK5.0之后,import语句不仅可以导入类,还增加了导入静态方法和静态域的功能。例如,如果在源文件的顶部,添加一条指令:  Java代码  import java.lang.System.*;  那么就可以使用System类的静态方法和...

    静态变量的导入以及集合的运用

    通过上述分析可以看出,合理使用静态导入可以极大地简化代码,提高开发效率。同时,熟练掌握集合框架中的各种数据结构及其操作方法对于编写高效、灵活的Java程序至关重要。希望本文能够帮助读者更好地理解和应用这些...

    文件文件文件文件文件

    1. **静态导入(Static Import)**:在Java 5中引入的静态导入允许开发者直接引用类的静态成员,而无需指定类名。以前,我们需要写`Math.random()`,现在可以通过`import static java.lang.Math.random;`,然后直接...

    使用import导入静态成员的方法 <font color=red>原创</font>

    在Java编程语言中,`import`关键字主要用于引入外部包或者类,使得我们可以在当前源文件中直接使用这些引入的元素,而无需每次都指定完整...希望本文的内容能对您在理解和使用`import static`导入静态成员时有所帮助。

    在Eclipse中导入static元素Java开发Java

    在弹出的菜单中,选择"Import static...",Eclipse会列出可供导入的静态成员。选择合适的成员并按Enter,Eclipse将自动添加import语句。 2. 自动导入:Eclipse还提供了一项名为"Organize Imports"的功能,可以在...

    4static封装类.rar在类的声明里查看有无静态元素(static

    4. 静态导入(Static Import): 在某些语言中,如Java,可以使用静态导入来避免在代码中频繁地写类名。这使得可以直接使用静态方法或变量,而不需要指定类名。例如: ```java import static java.lang.Math.*; ...

    static 的使用场合

    5. **静态导入(Static Import)** - Java 5引入了静态导入功能,允许开发者直接引用类的静态成员,而不需要指定类名。 ```java import static java.lang.Math.*; double result = sqrt(16); // 直接使用Math类...

    babel-plugin-transform-dynamic-imports-to-static-imports:将动态导入转换为静态导入的转换

    babel插件将动态导入转换为静态导入将动态导入转换为静态导入的转换安装: npm install babel-plugin-transform-dynamic-imports-to-static-imports用法:带有配置文件: { " plugins " : [ " babel-plugin-...

    java中静态导入机制用法实例详解

    在静态导入语句`import static com.sky.OrderModuleConstants.*;`中,`static`关键字表明我们是要导入静态成员,`*`表示导入该类的所有静态成员。这样,我们在代码中可以直接使用`SUCCESS`和`FAIL`,而不需要每次都...

    20_static 视频

    3. 静态导入:在Java中,可以使用`import static`语句来导入类的静态成员,以便在代码中直接使用,而无需指定类名。这可以减少代码的冗余,但应谨慎使用,以免造成混淆。例如: ```java import static java.lang....

    大数据必学Java基础(三十八):包和import讲解

    静态导入(`import static`)用于引入类的静态成员,使得可以直接调用这些成员而无需指定类名。例如,导入`Math`类的静态常量`PI`和方法`random()`,可以简化代码: ```java import static java.lang.Math.*; ...

    java static学习

    Java 中的静态导入包是指使用 static 关键字修饰的导入包,这种导入包可以直接访问静态成员。静态导入包的特点是: * 可以直接访问静态成员 * 无需使用类名访问 例如: ```java import static java.lang.Math.PI; ...

    java视频 static关键字

    4. **静态导入(Static Import)**: Java允许静态导入,这意味着你可以直接引用类的`static`成员,而不需要指定类名。例如: ```java import static java.lang.Math.PI; ... double area = PI * radius * ...

    22_static video

    5. **静态导包(Static Import)**:Java 5引入了静态导入功能,允许开发者直接使用类的静态成员,而无需指定类名。例如,`import static java.lang.Math.*;`可以让代码直接使用`Math`类的所有静态方法。 在这个...

    jsp虚静态

    【jsp虚静态】是一个在JavaServer Pages (JSP)开发中涉及到的概念,它与静态导入(static import)在Java编程中的用法相似,但应用于JSP页面。在JSP中,"虚静态"并不是一个标准术语,而是用来描述一种简化访问Java类...

    java代码-日常练习32 静态修饰符 static 修饰:类 类的成员(变量及方法)

    **静态导入(Static Import)** Java 5引入了静态导入的功能,允许开发者直接使用类的静态成员,而无需指定类名。例如: ```java import static java.lang.Math.PI; public class Circle { public void ...

    javaImportInfo

    - Java 5引入了静态导入,允许直接引用类的静态成员,无需通过类名。语法:`import static package_name.class_name.*;` 或 `import static package_name.class_name.static_member;` - 静态导入可以提高代码...

Global site tag (gtag.js) - Google Analytics