4.7.2 静态导入

    从Java SE 5.0开始,import语句不仅可以导入类,还增加了导入静态方法和静态域的功能。

    例如,如果在源文件的顶部,添加一条指令:

  
  
  
  
  1. import static java.lang.System.*; 

就可以使用System类的静态方法和静态域,而不必添加类名前缀:

  
  
  
  
  1. out.println("Goodbye, World!");    // i.e., System.out 
  2. exit(0);    // i.e., System.exit 

另外,还可以导入特定的方法域:

  
  
  
  
  1. import java.lang.System.out; 

    实际上,是否有更多的程序员采用System.out或System.exit的简写形式,似乎是一件值得怀疑的事情。这种编写形式不利于代码的清晰度。不过,静态导入有两个实际的作用。

    1)算数函数:如果对Math类使用静态导入,就可以采用更加自然的方式使用算术函数。例如,

  
  
  
  
  1. sqrt(pow(x, 2) + pow(y, 2)); 

看起来比

  
  
  
  
  1. Math.sqrt(Math.pow(x, 2) + Math.pow(y, 2)); 

清晰的多。

    2)笨重的常量:如果需要使用大量带有冗长名字的常量,就应该使用静态导入。例如,

 

 

  
  
  
  
  1. if(d.get(DAY_OF_WEEK) == MONDAY) 

看起来比

  
  
  
  
  1. if(d.get(Calendar.DAY_OF_WEEK) == MONDAY) 

容易的多。

你可能感兴趣的:(java,核心技术)