我是一个java的初学者,总感觉java里的流有点乱七八糟。不知道该去选择哪个。
恳请大哥大姐们给指点一下,什么情况下该选择什么流,有什么规律吗?
小弟在此谢谢了!

解决方案 »

  1.   

    说2个比较常用的哈流分为:字节流和字符流以Stream那么它就是字节流以Reader 和 Writer 那么它就是字符流字节和字符的区别:字节是一个一个的自己传输的字符是二个字节一次传输的。什么时候使用字节什么时候使用字符你应该清楚了把`````字节的超类为InputStream 和 OutputStream字符的超类为Reader 和 Writer对照这这个看看书应该很会理解如有什么说的不对``请给予指出!谢谢!
      

  2.   

    xiaomaha,呵呵在这。刚刚我知道你的意思,可我是说,如果我们给出一个空的无参的构造方法,系统就不会给我们提供构造方法了,那么,在哪里去初始化???
      

  3.   

    字节流FileInputStream ,FileOutputStream以字节流的方式读写文件,字符流通过字符流的方式读取文件并利用了缓冲区 BufferedReader FileReader.... 都是Reader,Writer抽象类的子类,二进制文件的读写FileInputStream fis=new FileInputStream("test.class");
     DataInputStream dis=new DataInputStream(fis);主要就应该是这样吧
      

  4.   

    呵呵,你还是没回答我的问题啊,构造方法是初始化对象的成员变量吧,如果我们写了一个空的无参构造方法,方法体都是空的(至少看上去),并且系统不再为我们创建构造方法了,那么初始化的工作在哪进行呢,我看到有这么一段话:。。“按照java规范,一个类实例的构造过程是遵循以下顺序的:  1.如果构造方法(constructor,也有翻译为构造器和构造函数的)是有参数的则进行参数绑定。  2.内存分配将非静态成员赋予初始值(原始类型的成员的值为规定值,例如int型为0,float型为0.0f,boolean型为false;对象类型的初始值为null),静态成员是属于类对象而非类实例,所以类实例的生成不进行静态成员的构造或者初始化,后面将讲述静态成员的生成时间。”其实我说的就是这个所谓的内存分配已经不是在我们的代码里实现了??