Java语言的强大在于它提供了丰富的类库,当程序中需要一些常见操作的时候,只需要导入一个包或者类就可以轻松完成。
在导包的过程中,也有一些需要注意的地方,一些小小的知识点。
Java会自动为程序导入一个java.lang的包,所以,创建一个Java类或者接口的时候,lang包中的所有类就是默认可以使用的。比如Java中的Math类就位于java.lang包当中,所以我们可以很方便地使用Math类。这个时候,就有一个新的问题出现了:如果频繁使用Math类中的方法,我们每一次操作,都要写Math.function(),显然,每次都要写Math是很麻烦的。
为了解决这个问题,Java又为编程人员提供了一种引用机制叫静态引入。
可以通过 import static packagename.ClassName.functionName;或者import static packagename.ClassName.*;
这两种方式引入一个类中的某个静态方法或者所有的静态方法。
通过静态引入,可以将一个类中的静态方法引入到程序当中,相当于程序本身的一个方法,可以直接使用方法名调用而不必在前面书写类名。
程序示例:
import static java.lang.Math.random;
public class Main {
public static void main(String[] args) {
System.out.println(Math.random());
System.out.println(random());
System.out.println(Math.PI);
System.out.println(PI);
}
}
在上面的程序中,使用了Math类的random()静态方法和PI静态常量。如果按照程序当中的写法,仅仅引入了java.lang.Math.random方法后,System.out.println(random());语句是正确的,但是当第四条打印语句直接访问PI的时候,程序报错了:PI cannot be resolved to a variable。
修改的方法是要么写 import static java.lang.Math.PI;或将静态引入语句直接修改为 import static java.lang.Math.*;
当然了,如果程序中使用PI不是很多的话,可以直接写Math.PI。