import java.lang.System.out;//error
在程序最前面的上面语句为什么是错的?
而下面这句不管有没有static都是对的,这是为什么?
import static java.lang.System.*;
如图所示:
阿神2017-05-17 10:01:25
首先你要理解1.5中新增加的特性 叫做静态导入
所谓静态导入简单的理解就是导入静态变量和方法
格式为 import static 包名.类名.静态属性|静态方法
给你看源码: out 是一个用static修饰的静态变量 , 所以你导包的时候 如果不加static是会报错的
而 System类下不仅仅只有static修饰的属性或方法,所以可以不用加static
public final static PrintStream out = null;