天天看点

静态导入的作用和实例1 实例2 代码说明3 静态导入说明

1 实例

创建一个StaticClass.java的静态类:

package com.cjg.StaticImport;
public class StaticClass {
	public static int MAX12=100;
	public static void daying(int x){
		System.out.println(x);
	}
}
           

StaticImport.java演示如何使用静态类:

import  static com.cjg.StaticImport.StaticClass.*;
import static java.lang.Math.abs;
public class StaticImport {
	public static void main(String[] args){
		System.out.println(MAX12);
		daying(5);
		System.out.println(abs(-4));
	}
}
           

执行结果:

100
5
4
           

2 代码说明

(1)import static com.cjg.StaticImport.StaticClass.* 导入了StaticClass类中的类方法daying()和类变量MAX12。具体调用时只需要直接写类方法和变量名,而不需要写成staticclass.daying(5)和StaticClass.MAX12。 (2)上述代码中import static java.lang.Math.abs 只导入了类Math中的类方法abs()。所以在具体调用时,如果直接写acos(4)就会报错,但是写abs(-4)类方法就不会报错。

3 静态导入说明

(1)老版本java的import只能导入一个类或包中的所有类,而最新特性可以导入静态类和静态域。 (2)不可能一行语句静态导入包中所有的类方法和类变量。不能这样写:

import static java.lang.*;
           

(3)一个本地方法与一个静态导入的方法同名,则本地方法被调用。