Static_import
Static import
Java programming language feature
Static import is a feature introduced in the Java programming language that allows members (fields and methods) which have been scoped within their container class as public static
, to be used in Java code without specifying the class in which the field has been defined. This feature was introduced into the language in version 5.0.
The feature provides a typesafe mechanism to include constants into code without having to reference the class that originally defined the field. It also helps to deprecate the practice of creating a constant interface (an interface that only defines constants then writing a class implementing that interface, which is considered an inappropriate use of interfaces.[1])
The mechanism can be used to reference individual members of a class:
import static java.lang.Math.PI;
import static java.lang.Math.pow;
or all the static members of a class:
import static java.lang.Math.*;
For example, this class:
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello World!");
System.out.println("Considering a circle with a diameter of 5 cm, it has");
System.out.println("a circumference of " + (Math.PI * 5) + " cm");
System.out.println("and an area of " + (Math.PI * Math.pow(2.5, 2)) + " sq. cm");
}
}
Can instead be written as:
import static java.lang.Math.*;
import static java.lang.System.out;
public class HelloWorld {
public static void main(String[] args) {
out.println("Hello World!");
out.println("Considering a circle with a diameter of 5 cm, it has");
out.println("a circumference of " + (PI * 5) + " cm");
out.println("and an area of " + (PI * pow(2.5, 2)) + " sq. cm");
}
}