Я не понял, почему к нескольким пакетам импорта добавлен «x» к «java». Какова причина? Разве это не может быть просто java.swing.*, как другие java.io.*?
java.swing.*
java.io.*
Swing изначально был расширением Java - отдельно загружаемой библиотеки. Он стал частью «основной» JRE в Java 1.2. Было бы странно, если бы отдельная библиотека требовала пакета java. *, Отсюда и текущая ситуация. Существует множество других расширений с похожей историей.
Статья в Википедии о Swing содержит немного больше информации о своей истории.
Из Core Java 2: альтернативный текст http://bks5.books.google.fr/books?id=W6bomXWB-TYC&printsec=frontcover&img=1&zoom=5&edge=curl&sig=ACfU3U3IeRSfENUVokGf-d9GUZZBU-tYMQ
Имя javax указывает на пакет расширения Java, а не на основной пакет. Классы Swing действительно являются расширением Java 1.1. Поскольку классы Swing не были частью базовой иерархии, можно загрузить классы Swing в браузер, совместимый с Java 1.1 (менеджер безопасности браузера не позволяет добавлять пакеты, начинающиеся с "java."). На платформе Java 2 пакет Swing больше не является расширением, а вместо этого является частью базовой иерархии. Любая реализация Java, совместимая с Java 2, должна предоставлять классы Swing. Тем не менее, имя javax остается для совместимости с кодом Java 1.1. (На самом деле пакет Swing начинался с com.sun.java.swing, затем ненадолго переместился на java.awt.swing в ранних бета-версиях Java 2, а затем вернулся к com.sun.java.swing в поздних бета-версиях Java 2 и после воплей протеста со стороны Java-программистов. , нашел свое последнее пристанище в javax.swing.)
javax
java.
com.sun.java.swing
java.awt.swing
javax.swing
По историческим причинам и обратной совместимости. До версии java 1.2 swing был распространен как отдельный пакет от java (отсюда и javax как расширение).
Когда swing стал частью стандартного java-дистрибутива, имя было сохранено для обратной совместимости. Больше информации в Википедии Статья
x было потому, что они были расширениями. В версии 1.1 Java не было качели, и когда он был добавлен, они решили назвать его так: javax
Существует несколько пакетов с похожей историей.