不可以简写,要有编码规范。
DataInputStream是数据输入流,读取的是java的基本数据类型。
FileInputStream是从文件系统中,读取的单位是字节。
DataInputStream(简称Data)和FileInputStream(简称File)两者都是inputStream的子类,但是他们的父类不同,Data的父类是FilterInputStream,而File的父类是inputStream,形象一点也就是说,Data的爷爷才是File的爸爸,File中的方法针对读取文件,并把文件的字符内容以数据流的形式读取到内存中便于进行进一步处理,这个过程中涉及到流的封装,例如:DataInputStream in = new DataInputStream(new FileInputStream( "Java2s.txt"));使用File来加载一个文件,然后使用Data对File进行封装。
都是输入流,正确的写法:
DataInputStream dis = new DataInputStream( new FileInputStream("Data.txt")).
你可以看下jdk api,里面写的很详细
DataInputStream继承(extends)FileInputStream implements DataInput,从FileInputStream中继承了in字段;
FilterInputStream 继承InputStream类 FilterInputStream 包含其他一些输入流,它将这些流用作其基本数据源,它可以直接传输数据或提供一些额外的功能。FilterInputStream 类本身只是简单地重写那些将所有请求传递给所包含输入流的 InputStream 的所有方法。
DataInputStream 继承FilterInputStream类 DataInputStream 数据输入流允许应用程序以与机器无关方式从底层输入流中读取基本 Java 数据类型。应用程序可以使用数据输出流写入稍后由数据输入流读取的数据。
InputStream 此抽象类是表示字节输入流的所有类的超类。DataInputStream =new DataInputStream(new fileInputStream("dataout.txt"));不会出现编译问题,但是建议不要简写。