日期:2014-05-20  浏览次数:20695 次

求解。。IO系统不解之1
书上边有段代码如下
Java code

LineNumberInputStream li = 
       new LineNumberInputStream(
           new StringBufferInputStream(s2));
DataInputStream in4 = new DataInputStream(li);


然后书上说不能如下代码
Java code

DataInputStream in4 = 
        new DataInputStream(
             new LineNumberInputStream(
                   new StringBufferInputStream(s2)));


书上给出的理由是:在这里,不可简单地将所有构建器都组合起来,因为必须保持LineNumberInputStream的一个句柄(注意这并非一种基础环境,所以不能简单地将in4造型到一个LineNumberInputStream)。
问:这哪里需要把in4造型到一个LineNumberInputStream了?看的我糊里糊涂,哪位能解释下谢谢。。。

------解决方案--------------------
看看下文,有没有用到li变量的地方,也许那里就是答案。