> On Jul 23, 2019, at 12:45 AM, Alan Bateman <alan.bate...@oracle.com> wrote: > > On 23/07/2019 01:01, Brian Burkhalter wrote: >> : >> This version [1] adds writeBytes() and overrides write(byte[]) without >> changing its behavior. The documentation of write(byte[]) points the user to >> writeBytes() and write(byte[],int.int). >> > The overridden write(byte[]) declares that it throws IOE so it's source > compatible but it behaves like the other PS.write methods in that checkError > is used to check for an error rather than throwing IOE.
I don’t see what you mean. @Override public void write(byte buf[]) throws IOException { super.write(buf); } Should “trouble” be set and the IOE re-thrown? > This will need a bit more wording in the method description to make this > clearer. The change to the class description is confusing as it suggests that > the method throws IOE - maybe that change should be dropped to avoid trying > to explain the oddity in two places. The current statement in the class doc without any change is however incorrect "Unlike other output streams, a PrintStream never throws an IOException; […]” so it seems something is needed here. Thanks, Brian