あるリソースのバイトを読み取り、それらを解析してから、ファイルを出力ディレクトリに書き込むRawReaderというクラスがあります。
さまざまな型をソースおよび宛先としてコンストラクターに渡すことができるようにすることは理にかなっています。
- ソース:(ファイルまたはURLの)文字列、URL、ファイルまたはInputStream
- 宛先:文字列(ディレクトリ)またはファイル
ただし、コンストラクターをオーバーロードすると、8つの異なるバージョンが残ります。たとえば、3番目のオプションの引数を追加したい場合は、chunkSize
16個のコンストラクターがあります。
一方、(Object, Object)
とを受け入れる2つのコンストラクターを持つことができ(Object, Object, int)
ます。引数の型が検出され、正しくない場合はIllegalArgumentExceptionsがスローされる可能性があります。
このような状況は通常Javaでどのように処理されますか?