要注意,他们的构造方法都使用最基本的Input/Output Stream做参数!

解决方案 »

  1.   

    ok,基本明白了.
    只要有FileInputStream f = new FileInputStream("SL275.java");                
    后面的高级流可以任意嵌套.不过你们看看上面的两种情况到底应该怎么区别啊?也就是在什么情况下用哪个?
      

  2.   

    他们方法参数都是java.io.InputStream;当然可以用上溯造型,用子类的实例做实际参数啦。这不是什么任意嵌套.纯粹的多态问题。考虑到InputStream多是抽象方法,子类各自实现不同,所以上面两种是可能会有区别的。
      

  3.   

    说的很好,谢谢不过这个我是知道的,可能我语言表达的不好.
    我实际问的意思其实是
    Low-Level Stream<<<<<<<<<High-Level Stream A<<<<<<<High-Level Stream B

    Low-Level Stream<<<<<<<<<B<<<<<<<<<<<<<<<<<A
    无论AB是那个高级流,只要是高级流,上面的两个情况是不是都可以成立?