Fix Version/s: 14
Compatibility Risk Description:There should be little compatibility risk as the overridden method retains the same behavior and the added method is of course new.
Interface Kind:Java API
write(byte) and add
java.io.PrintStream was supposed to override methods not to throw
IOException as indicated in the class documentation:
Unlike other output streams, a PrintStream never throws an IOException; instead, exceptional situations merely set an internal flag that can be tested via the checkError method.
java.io.FilterOutputStream was, however, not so overridden. The method is therefore documented as throwing
IOException but never does so.
Also, there is no
write method which has only a byte array parameter and which is not declared to throw
IOException. Callers are thus obliged in this scenario to write a try-catch block even though
IOException will never be thrown.
write(byte) adding clarifying documentation while retaining the existing behavior, and add
Please refer to the specifications of
writeBytes in the attachments.