クラスが階層内でどのように編成されているかという点で、文字ストリームとバイト ストリームが 1 対 1 で対応することを期待していました。
FilterReaderand FilterWriter(文字ストリーム) はFilterInputStreamand FilterOutputStream(バイトストリーム) クラスに対応します。
ただし、いくつかの変更に気付きました-
BufferedInputStream拡張しますがFilterInputStream、BufferedReader拡張しませんFilterReader。BufferedOutputStreamとPrintStream両方とも拡張FilterOutputStreamしますが、BufferedWriterとPrintWriterは拡張しませんFilterWriter。FilterInputStreamandFilterOutputStreamは抽象クラスではありませんが、FilterReaderandFilterWriterは抽象クラスです。
そのような違いを指摘するには偏執的すぎるかどうかはわかりませんが、そのような決定の背後に設計上の理由があるかどうかを知りたいと思っていました.