Обратная совместимость с Java 6 Source и SQL

Насколько я понимаю, для обеспечения совместимости с исходным кодом Java никогда не вводит новые методы для открытых интерфейсов, поскольку это нарушает работу существующих клиентов, реализующих интерфейсы.Примечания к выпуску Java состояния

В целом, политика следующая, за исключением любых несовместимостей, перечисленных ниже:

Вспомогательные выпуски (такие как 1.4.1, 1.4.2) не вводят никаких новых языковых функций или API. Они будут поддерживать исходную совместимость друг с другом.

Функциональные выпуски и основные выпуски (такие как 1.3.0, 1.4.0, 5.0) поддерживают восходящую, но не нисходящую совместимость с исходным кодом.

Тем не менее, пакетыjava.sql а такжеjavax.sql продолжать развиваться и вносить множество несовместимых изменений. Например, я заметил следующие несовместимые изменения (введенные в Java 6):

java.sql.Statement продолжаетсяjava.sql.Wrapper, требующий новых двух новых методов.java.sql.Statement вводит 3 новых методаjava.sql.PreparedStatement вводит 19 новых методов!java.sql.ResultSet вводит 48 новых методов!

Знаете ли вы, как и почему эти методы были добавлены? Являетсяjava.sql лечиться по-другому от остальной платформы? Знаете ли вы об обсуждении / JSR вокруг этих дополнений?

Ответы на вопрос(4)

Ваш ответ на вопрос