|
|
What is Java Static Import?
Description: |
In general, any class from same package can be called without importing it. Incase, if the class is not part of the same package,
we need to provide the import statement to access the class. We can access any static fields or methods with reference to the class name. Here comes the
use of static imports. Static imports allow us to import all static fields and methods into a class and you can access them without class name reference.
The syntax for static imports are given below:
|
Code: |
package com.java2novice.staticimport;
// To access all static members of a class
import static package-name.class-name.*;
//To access specific static variable of a class
import static package-name.class-name.static-variable;
//To access specific static method of a class
import static package-name.class-name.static-method;
|
Static Import Example: |
Here we have two classes. The class MyStaticMembClass has one static variable and one static method. And anther class MyStaticImportExmp
imports these two static members.
|
MyStaticMembClass.java |
package com.java2novice.stat.imp.pac1;
public class MyStaticMembClass {
public static final int INCREMENT = 2;
public static int incrementNumber(int number){
return number+INCREMENT;
}
}
|
MyStaticImportExmp.java |
package com.java2novice.stat.imp.pac2;
import static com.java2novice.stat.imp.pac1.MyStaticMembClass.*;
public class MyStaticImportExmp {
public static void main(String a[]){
System.out.println("Increment value: "+INCREMENT);
int count = 10;
System.out.println("Increment count: "+incrementNumber(count));
System.out.println("Increment count: "+incrementNumber(count));
}
}
|
Output: |
Increment value: 2
Increment count: 12
Increment count: 12
|
|
|
|
Prevent a method from being overridden
By specifying final keyword to the method you can avoid overriding
in a subcalss. Similarlly one can use final at class level to
prevent creating subclasses.
The pessimist complains about the wind; the optimist expects it to change; the realist adjusts the sails.
-- William Arthur Ward
|