当前位置: 移动互联网学院 > Java培训 > JAVA开发 > Java静态导入实现代码
Java静态导入实现代码 时间:2017-08-11     来源:互联网

Java静态导入Java开发学习中不得不掌握的内容,在实际的Java开发中发挥着强大的功能,Java静态导入可以有效减少击键次数,那么Java如何实现静态导入呢?这里华清Java学院小编和大家分享一下Java静态导入的实现代码。

Java静态导入示意图

当你想使用static成员时,可以使用Java静态导入(在API中的类和你自己的类上,都可以使用该特性)。下面是Java静态导入前后的代码实例:

在静态导入之前:

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

让我们看一下使用了Java静态导入特性的代码中将发生什么:

1、虽然该特性通常称为“静态导入”,但语法必须是import static,后面跟你想导入的static成员的完全限定名称,或者通配符。在本例中,我们在System类的out对象上进行静态导入。

2、在本例中,我们可能想使用Java.lang.Integer类的几个static成员。该静态导入语句使用通配符来表达“我想在此类中的所有静态成员上进行静态导入”。

3、现在我们终于看到静态导入特性的好处!我们不必在System.out.println中键入System。太好了!另外,我们不必在Integer.MAX_VALUE中键入Integer。因此,在这行代码中,我们能够将快捷方式用于静态方法和一个常量。

4、后,我们进行更多的快捷操作,这次针对Integer类的方法。

关于该特性,我们已经有点儿讽刺意味儿了,但不仅我们是这样的。我们不认为节省少量的击键次数会让代码难于阅读一点,但许多开发人员要求将它添加到语言中。

下面是使用Java静态导入的几条原则:

你必须说import static, 不能说static import。

提防含糊不清的命名static成员。例如,如果你对Integer类和Long类执行了静态导入,引用MAX_VALUE将导致一个编译器错误,因为Integer和Long都有一个MAX_VALUE常量,并且Java不会知道你在引用哪个MAX_VALUE。

你可以在static对象引用、常量(记住,它们是static 或final)和static方法上进行静态导入。

以上就是今天要分享的Java静态导入的代码实现,希望对大家有所帮助。

X