ブロックの引用は Java Docs からのものです -
FilterInputStream には、データの基本的なソースとして使用する他の入力ストリームが含まれており、途中でデータを変換したり、追加機能を提供したりする可能性があります。
DataInputStream を使用すると、アプリケーションは、基礎となる入力ストリームからプリミティブな Java データ型をマシンに依存しない方法で読み取ることができます。
したがってDataInputStream
、FilterInputStream
ObjectInputStream は、ObjectOutputStream を使用して以前に書き込まれたプリミティブ データとオブジェクトを逆シリアル化します。
ただし、何らかの理由で、基になる入力ストリームからオブジェクト (今回はプリミティブ型ではない) も読み取っていますが、ObjectInputStream
拡張されません。FilterInputStream
関連するクラスの分岐は次のとおりです。
同じことの設計上の理由はありますか?