Java静态导入

什么是静态导入?

静态导入是在jdk1.5之后引入的心概念,在你自己的类中使用静态导入,你就可以使用其它类中定义的静态类方法和类变量,而且这些类方法和类变量就像在本地定义的一样。也就是说,静态导入允许你在调用其它类中定义的静态成员时,可以忽略类名。 

静态导入的语法:

普通导入的语法是 import 加上类名,而静态导入是import static 加上类名。例子如下:

普通导入和静态导入:

 1 package cn.cntaiping_01;
 2 
 3 import java.util.HashMap;  //普通导入
 4 import java.util.Map;      //普通导入
 5 
 6 import static java.lang.Math.*;  //静态导入
 7 public class Static_import {
 8     /**
 9      * @param args
10      */
11     public static void main(String[] args) {
12         System.out.println(Math.abs(3-9));
13         
14         
15         Map<String,Integer>map_static=new HashMap<String, Integer>();
16         
17         map_static.put("001", abs(9-20));   //静态导入后,直接使用Math类的静态方法
18         
19         map_static.put("002", Math.abs(3-9)); //普通的方法
20         
21         System.out.println(map_static);
22     }
23 
24 }
View Code

更明显的区别:

未采用静态导入之前

 1 package cn.cntaiping_01;
 2 
 3 
 4 public class Static_import {
 5     /**
 6      * @param args
 7      */
 8     public static void main(String[] args) {
 9         System.out.println("这是未采用静态导入之前");
10     }
11 
12 }
View Code

采用了静态导入之后

package cn.cntaiping_01;

import static java.lang.System.*;
public class Static_import {
    /**
     * @param args
     */
    public static void main(String[] args) {
        out.println("这是未采用静态导入之前");
    }

}
View Code

采用静态导入必须要知道的那些事:

1、虽然该特性通常称为“静态导入”,但语法必须是import static,后面跟你想导入的static成员的完全限定名称,或者通配符。
2、提防含糊不清的命名static成员。

原文地址:https://www.cnblogs.com/tian2fei/p/3727186.html