小弟这里一个棘手的问题,一直不解,还须前辈帮助!是这样的:
看这句:BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
这句在JAVA的I/O系统的应用当中再普通不过了,但是我还是对其中有些问题很事疑惑!System类中的in属性是InputStream类型的这个类是一个abstract class.于是我想这个抽象类型的对象应该是指向他的一个子类的具体类,那么这个抽象类才真正具有意义!带着这个疑惑我查了下SUN的类库,结果让我吃惊!原句是这样:
 public final static InputStream in = nullInputStream();//这是在System类中.
 private static InputStream nullInputStream() throws NullPointerException {
if (currentTimeMillis() > 0)
    return null;
throw new NullPointerException();
    }
这样的话 in得到了null他又能做什么呢??怎样能实现获得系统控制台的功能呢??(不解!!)
另外,在SUN的库中这句引用在哪里?
import sun.net.InetAddressCachePolicy;
import sun.reflect.Reflection;
import sun.security.util.SecurityConstants;
我在SUN的类库中怎么也找不到上面的这个包!!
最后一个问题:
在System类中经常有关键字native,我也清楚他实在吊用系统的类库或这是第三方的文件,那么JAVA到底是怎样实现调用的呢??(找了半天没找到这个引用路径)
注:我的JDK版本是1.4.2_12
先谢!!!